Php noob。PHP:分解文件并仅输出具有值的部分
我有这个文本文件(names.txt)用逗号分隔的名称和代码。类似于此:
John doe, 123456, 876543
Mary Ann, 456878
Ben Anderson, 987554, 097532, 873445
正如你可以看到每个名字都可以有不同的代码量,从一个长达10 我想要做的就是输出这个信息作为表
的我尝试这样做:
<table>
<?php
$file_handle = fopen("names.txt", "rb");
while (!feof($file_handle)) {
$line_of_text = fgets($file_handle);
$parts = explode(',', $line_of_text);
echo "<tr>";
echo "<td><strong>" . $parts[0] ."</strong></td>";
echo "<td>" . $parts[1] . "</td>";
echo "<td>" . $parts[2] . "</td>";
echo "<td>" . $parts[3] . "</td>";
echo "<td>" . $parts[4] . "</td>";
echo "<td>" . $parts[5] . "</td>";
echo "<td>" . $parts[6] . "</td>";
echo "<td>" . $parts[7] . "</td>";
echo "<td>" . $parts[8] . "</td>";
echo "<td>" . $parts[9] . "</td>";
echo "<td>" . $parts[10] . "</td>";
echo "</tr>";
}
fclose($file_handle);
?>
</table>
这不起作用,因为有时$零件[]将是空的,没有什么可输出和我得到一个错误。未定义的偏移量。 我该如何去做这件事,只有当它有一个值的时候“回声”$ parts []?
`empty()`仍然会通过警告,因为索引不存在。这里需要`isset()`。 – PiTheNumber 2011-12-14 08:47:04
完美的工作 – MagnusGaarde 2011-12-14 08:48:21