我正在尝试从PHP处理CSV文件,为此我正在使用fgetscv()
。在CSV文件中找到具有以下结构的记录时,就会出现问题:
下一行是
姓名;姓氏;年龄;“城市;性别”
private function processFile($file, $name)
{
$csv = array();
while ($filas = fgetcsv($archivo, 0, ";", "\"", "\"")) {
array_push($csv, $filas);
}
var_dump($csv);
}
进行var_dump()
时,我得到以下结果:
0 => "name", 1 => "lastname", 3 => "age", 4 => "city;gender"
我已经尝试过在fgetscv()
的附件和定界符中将“'”作为参数发送,但是结果是相同的。有什么建议么?该过程中有超过一千条记录的文件,我想消除该引用
答案 0 :(得分:0)
您的字段可能不匹配。 尝试先打印结果
https://www.php.net/manual/en/function.fgetcsv.php
示例#1读取并打印CSV文件的全部内容
<?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
echo $data[$c] . "<br />\n";
}
}
fclose($handle);
}
?>