假设我在CSV文件中有以下行(在此示例中删除了标题行):
"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.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。