为什么$ order在第二个循环中显示为空?

时间:2014-10-31 03:54:13

标签: php

一直在用一个简单的PHP脚本为我的作业使用数组。我甚至留下了故障排除中的注释,最后发现如果我把for循环遍历while循环中的$ orders,它会以我想要的方式输出文件内容。真正奇怪的部分是,第二个循环,STILL什么也没输出。没有。我发现fgetcsv一次一行地遍历文件,所以它不断被覆盖或延伸到数组的末尾(我假设后者,但它似乎没有那样工作?)甚至如果是这种情况,那么迭代$ order的第二个for循环不应该至少转储文件中的最后一行吗?

<html>
<title>Bob's Auto Array</title>
<body>
<?php

echo "<h1>Bob's Auto Parts</h1>";
echo "<h2>Customer Orders</h2>";
$order = 0;
$file = fopen($_SERVER['DOCUMENT_ROOT']."/prg240/orders.txt", 'r');

#$file = file($_SERVER['DOCUMENT_ROOT']."/prg240/orders.txt");
#echo $_SERVER['DOCUMENT_ROOT']."/prg240/orders.txt";

if ($file) {
echo count($file);
while (!feof($file)) {
$order = fgetcsv($file, 99999, "\t");
for($i = 0; $i < count($order);$i++)
    echo "<p>".$order[$i]."</p>";
}
#fclose($file);
}

for($i = 0;$i < count($order);$i++)
echo "<p>".$order[$i]."</p>";
fclose($file);
?>

</body>
</html>

0 个答案:

没有答案