我想拆分一个 CSV 字符串。字符串如下所示:
“val1”,“val2”,“val3,其他一些东西”,“val4”
如您所见,值内可能有一个逗号(请参阅 val3),因此在逗号上使用 explode 将不起作用。
我也试过:
preg_split('/","/', $myLine)
但这不起作用,否则我该怎么做?
谢谢你的帮助 :)
如果您的数据在文件中,您可以使用内置的fgetcsv ,
或str_getcsv如果您的数据是字符串
对于 PHP 函数中的 CSV 文件:fgetcsv
在第三个参数中,您可以设置分隔符,默认情况下 - “,”(逗号)
函数读取每一行并返回包含当前行元素的数组
示例:
$f = fopen('file.csv', 'r+');
while (($data = fgetcsv($f, 1000, ",")) !== FALSE) {
/* $data is array with elements for current line */
}
fclose($f);
$inputfiledelimiter="~";
if (($handle = fopen($target_path, "r")) !== FALSE)
{
while (($data = fgetcsv($handle, 0, $inputfiledelimiter)) !== FALSE)
{
}
}