"500,000",2,50,90000
我有一个PHP脚本读取CSV文件,将文件分成几行,并将每一行存储在名为$linearray的数组中.然后,我使用一个foreach循环分别查看每行.
在foreach循环中,我使用以下函数将行分成单独的变量:
$line = str_replace("'","\'",$line);
从这里,我将值插入MysqL数据库中的单独列中.该脚本有效.这些值已插入数据库中,但遇到了问题.我想要:
"500,000" | 2 | 50 | 2 | 90000
但是我得到这个:
"500 | 000" | 2 | 50 | 2 | 90000
该脚本不够聪明,无法理解它应该跳过引号内的逗号.您知道如何更改脚本以确保获得所需的输出吗?
最佳答案
您可以使用str_getcsv功能
print_r(str_getcsv($line));
输出:
Array
(
[0] => 500,000
[1] => 2
[2] => 50
[3] => 2
[4] => 90000
)
Similar to 07001 this functions parses a string as its input unlike 07001 which takes a file as its input.