私はphp read csv関数を持っています。それはすべて正常に読み取り、行ごとに読み取り、それらを配列に変換します。それはすべて正常に動作します。
private function readCSV($csvFile){
$file_handle = fopen($csvFile, 'r');
while (!feof($file_handle) ) {
$line_of_text[] = fgetcsv($file_handle, 1024);
}
fclose($file_handle);
return $line_of_text;
}
ただし、CSV ファイルが変更された後。値の 1 つを変更して再度保存し、スクリプトで csv を読み取るだけです。CSV の読み取り方が異なります。
以下の結果:
Array
(
[0] => Array
(
[0] => id
[1] => title
[2] => phone
[3] => fax
)
[1] => Array
(
[0] => 2
[1] => asd
[2] => 61430055509
[3] =>
)
[2] =>
)
csv を保存した後、再度読み取ります
Array
(
[0] => Array
(
[0] => id
[1] => title
[2] => phone
[3] => fax
[4] => 2
[5] => asd
[6] => 61430055509
[7] =>
)
[1] =>
)
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
$data = $result;
$row = array_merge($row, $data);
if(!$flag) {
// display field/column names as first row
fputcsv($out, array_keys($row), ',', '"');
$flag = true;
}
array_walk($row, array($this, 'cleanData'));
fputcsv($out, array_values($row), ',', '"');
}