加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – CSV导入;所有值都是一行

发布时间:2020-12-13 18:19:10 所属栏目:PHP教程 来源:网络整理
导读:我在使用通过 PHP表单上传的CSV文件时遇到问题.这是代码: $row = 1;if (($handle = fopen($_FILES['csv']['tmp_name'],"r")) !== FALSE) { while (($data = fgetcsv($handle,1000,",")) !== FALSE) { $num = count($data); echo "p $num fields in line $ro
我在使用通过 PHP表单上传的CSV文件时遇到问题.这是代码:
$row = 1;
if (($handle = fopen($_FILES['csv']['tmp_name'],"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);
}

唯一的问题是,当我查询变量$data时,看起来CSV文件的内容被写入一行而不是多行.结果,我获得了228个列值的数组.

为什么是这样?我的PHP脚本没有正确检测到新行吗?如果是这样,是否有解决此问题的选项?

最可能的问题是源数据中的行结尾.您是否可以制作包含多个列和行的测试CSV文件,以确认或删除您正在测试的数据?

另见:http://www.php.net/manual/en/filesystem.configuration.php#ini.auto-detect-line-endings

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读