Я пытаюсь импортировать некоторые данные через файл csv в мою базу данных. Проблема в том, что в самом начале разработки я использовал окна, поэтому мой файл csv был написан в офисе ms. Поэтому при импорте там все работает нормально. Но, перейдя на linux (UBUNTU), сохраняя файл csv, он не отображает данные, как я хочу. Я тоже не получаю никакого решения.
Это массив, который генерируется csv, созданный службой ms на машине Windows, которая отлично работает.
Array ( [0] => Array ( [0] => Student Name [1] => Student Roll [2] => Class [3] => Section [4] => Exam [5] => Subject [6] => Total Marks [7] => Grade [8] => Objective [9] => Subjective [10] => Practical ) [1] => Array ( [0] => Sample Name [1] => 123 [2] => Nine [3] => A [4] => Mid Term [5] => Math [6] => 80 [7] => A+ [8] => 40 [9] => 20 [10] => 20 ) )
Но в linux мой формат csv работает некорректно. Он подталкивает все данные к одному ключу и одному элементу, как показано ниже.
Array ( [0] => Array ( [0] => Student Name Student Roll Class Section Exam Subject Total Marks Grade Objective Subjective Practical ) [1] => Array ( [0] => Samp0le Name 123 Nine A Mid Term Math 80 A+ 40 20 20 ) )
Итак, мой реальный вопрос: как я могу это прочитать?
Это мое кодирование для генерации верхнего массива:
$csv = array(); //$file = fopen('myCSVFile.csv', 'r'); ini_set("auto_detect_line_endings", true); while (($result = fgetcsv($fp)) !== false) { $csv[] = $result; } fclose($fp); echo '<pre>'; print_r($csv); echo '</pre>';
Пожалуйста, помогите мне, мне действительно нужно.