Как читать .csv файл по строкам с помощью PHP

#php #csv

#php #csv

Вопрос:

Я пытаюсь создать PHP-скрипт, который считывает каждую строку файла .csv. Я хочу обрабатывать каждую строку как массив данных. Пожалуйста, подскажите, как я могу достичь вышеуказанного?

введите описание изображения здесь

Комментарии:

1. Я не понимаю вопроса. Можете ли вы перефразировать это?

2. Если вы загуглите «read csv row php», первым результатом будет fgetcsv

3. «Я создаю php-скрипт» на самом деле? Потому что это звучит так, как будто вы хотите, чтобы мы сделали это для вас с нуля. Пожалуйста, покажите свою попытку.

Ответ №1:

Используйте функцию fgetcsv() .

 // Read the first line, headers
$headers = fgetcsv($file);
// Now $headers is an array of your headers

// Read the lines one by one
while (false != ($line = fgetcsv($file))) {
    // $line is an array of your cells
}
 

Ответ №2:

Вы можете использовать следующее для создания массива из csv;

 $aArray = str_getcsv ( file_get_contents("/path/to/file.csv") , ',', '"', "\");
var_dump($aArray);
 

Ознакомьтесь с руководством по PHP;
str_getcsv() и file_get_contents()

Ответ №3:

Вы можете использовать следующее, чтобы прочитать строку из файла csv и создать массив из файла csv:

 <?php
$file = fopen("/path/to/file.csv","r");
$arrayCsv = array();
while(!feof($file)) {      
  $fpTotal = fgetcsv($file);
  array_push($arrayCsv,$fpTotal);
}
fclose($file);
print_r($arrayCsv); //prints array from csv
?>
 

Ответ №4:

Вы можете использовать fgetcsv функцию для чтения данных из файла csv. Пожалуйста, посмотрите на это: http://php.net/manual/en/function.fgetcsv.php