【发布时间】:2011-09-21 02:28:57
【问题描述】:
我对 PHP 还很陌生,只是想转换我在 C 中所做的一些事情。我学到的从 C 中读取文件的习惯用法是:
while ((c = getchar()) != EOF) {
doSomethingWith(c);
}
我做了一些阅读,似乎在 PHP 中执行此操作的“正确”方法是:
while (!feof($file)) {
$c = fgetc($file);
doSomethingWith($c);
}
我的问题是:是否可以将两者组合如下(我已经尝试过,并且它在我的测试文件上工作正常),或者是否存在可以在 EOF 之前找到 null 的情况?:
while (($c = fgets($f)) != null) {
doSomethingWith($c);
}
提前干杯
史蒂夫
【问题讨论】:
-
谢谢戈登。使用该 SPL 方法是否更适合 PHP? (如果这是 Python,我会说,“这更 Pythonic 吗?” - 不确定这是否会转化为 PHP ...... Python 人有时似乎在应该如何做事和做事时有一根胡萝卜卡在某个地方Python 上的东西 :)
-
没有。您可以同时使用两者。我只是发现 SPL 方式更方便、通用和可读。但这只是我。使用适合您的。