我有这个PHP:
$handle = fopen($_FILES["csvfile"]["tmp_name"], "r");
while (($data = fgetcsv($handle, 5000, ",", '"')) !== FALSE) {
echo "<pre>";
print_r($data);
echo "<pre>";
}
<form method="post">
<input type="file" name="csvfile">
<input type="submit>
CSV由html <input type="file">
提供。现在它打印出的数组只是第一个值和逗号或每一行,而不是打印出每行11个值的数组。我做到了做正确的事情,但不知何故搞砸了我的代码,无法弄清楚我做了什么。
以下是CSV的示例:
"lorem","ipsum","dolor","sit","amet","consectetuer","adipiscing","elit","sed ","diam","nonummy",
答案 0 :(得分:1)
在您发布的相同代码上,我得到了一个很好的格式化结果
file_put_contents( 'tmp.tmp',
'"lorem","ipsum","dolor","sit","amet","consectetuer","adipiscing","elit","sed ","diam","nonummy",
"1lorem","1ipsum","1dolor","1sit","amet","consectetuer","adipiscing","elit","sed ","diam","nonummy",
');
$handle = fopen("tmp.tmp", "r");
while (($data = fgetcsv($handle, 5000, ",", '"')) !== FALSE) {
echo "<pre>";
print_r($data);
echo "<pre>";
}
我明白了:
阵 ( [0] =&gt; LOREM [1] =&gt;存有 [2] =&gt;悲 [3] =&gt;坐 [4] =&gt;阿梅德 [5] =&gt; consectetuer [6] =&gt; adipiscing [7] =&gt; ELIT [8] =&gt; SED [9] =&gt;直径 [10] =&gt; nonummy [11] =&gt; )
你可能在其他地方做错了,而没有注意到它。