php文本逐行不工作

php文本逐行不工作,php,Php,我有一个名为things.txt的文本文件,其中包含: thing1 thing2 thing34 和php: $fp = fopen('things.txt'); while (!feof($fp)) { $line = fgets($fp); echo $line."<br>"; } fclose($fp); $fp=fopen('things.txt'); 而(!feof($fp)){ $line=fgets($fp); 回音$line.“”; } fclo

我有一个名为things.txt的文本文件,其中包含:

thing1
thing2
thing34
和php:

$fp = fopen('things.txt');
while (!feof($fp)) {
    $line = fgets($fp);
    echo $line."<br>";
}
fclose($fp);
$fp=fopen('things.txt');
而(!feof($fp)){
$line=fgets($fp);
回音$line.“
”; } fclose($fp);
而且它不起作用……有什么想法吗?

至少需要两个参数

$fp = fopen('things.txt', 'r');
第二个是模式
r
(“只读,指针在开头,不截断”)在这里应该可以正常工作,因为您只读取它。有关其他模式,请参阅手册(如上链接)

您应该将开发设置更改为

error_reporting = E_ALL | E_STRICT

因为你应该得到一个错误。然而,无限循环的原因是,
fopen()
返回
null
feof(null)
返回
false
,而(!false)
是一个无限循环。

尝试
$fp=fopen('things.txt',r')或死('无法打开文件')
若要查看脚本在使用fopen时是否能够实际找到文件,需要指定一种模式(读取、写入等)。因此,您应该将代码更改为:

$fp = fopen('things.txt', 'r');
while (!feof($fp)) {
    $line = fgets($fp);
    echo $line."<br>";
}
fclose($fp);
$fp=fopen('things.txt','r');
而(!feof($fp)){
$line=fgets($fp);
回音$line.“
”; } fclose($fp);
有任何错误消息或输出错误吗?它会永远循环。如何使其显示错误消息?错误报告(E\u ALL)是您的朋友…
错误报告(-1)
是您的其他朋友。。。