how to find out if csv file fields are tab delimited or comma delimited

后端 未结 15 1013
[愿得一人]
[愿得一人] 2020-12-01 09:46

how to find out if csv file fields are tab delimited or comma delimited. I need php validation for this. Can anyone plz help. Thanks in advance.

15条回答
  •  日久生厌
    2020-12-01 10:11

    you can simply use the fgetcsv(); PHP native function in this way:

    function getCsvDelimeter($file)
    {
        if (($handle = fopen($file, "r")) !== FALSE) {
            $delimiters = array(',', ';', '|', ':'); //Put all that need check
    
            foreach ($delimiters AS $item) {
                //fgetcsv() return array with unique index if not found the delimiter
                if (count(fgetcsv($handle, 0, $item, '"')) > 1) {
                    $delimiter = $item;
    
                    break;
                }
            }
        }
    
        return (isset($delimiter) ? $delimiter : null);
    }
    

提交回复
热议问题