将CSV转换为PHP数组 – 终点问题(CR LF)
发布时间:2020-12-13 17:23:03 所属栏目:PHP教程 来源:网络整理
导读:我正在使用代码bellow将csv文件转换为数组.但是,问题是该行的结尾是CR LF,并且未检测到它,因此数组具有错误的偏移量. CR LF被忽略,并且它周围的“单元”被合并. 我怎么能重写代码来正确检测这行结束和拆分数组?或者,有没有更好的方法将csv转换为数组? 这里
我正在使用代码bellow将csv文件转换为数组.但是,问题是该行的结尾是CR LF,并且未检测到它,因此数组具有错误的偏移量. CR LF被忽略,并且它周围的“单元”被合并.
我怎么能重写代码来正确检测这行结束和拆分数组?或者,有没有更好的方法将csv转换为数组? 这里有一些类似的问题,但我还没有找到解决这个问题的方法. 谢谢. $fileName ='test.csv'; $csvData = file_get_contents($fileName); $csvNumColumns = 11; $csvDelim = ";"; $data = array_chunk(str_getcsv($csvData,$csvDelim),$csvNumColumns); print_r($data); 解决方法
你尝试过使用fgetcsv()吗?关于
php.net的完整信息.
来自php.net的示例用法 <?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); } ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |