PHP fopen和is_dir问题

时间:2015-06-06 13:23:48

标签: php

我有一个小页面来检查网络共享是否已启动。为此,用户可以共享txt文件(比触摸代码本身更容易),然后页面将读取文本文件并检查其是否在线。

但问题是,它没有预期的工作。看起来只有当我在文本文件中有一行

时它才有效
<?php
$handle = fopen("share.txt", "r");
if ($handle) {
 while (($line = fgets($handle)) !== false) {
    echo $line;
    if (is_dir($line)) {echo $line ."is up";}
    else {echo $line ."is down";}
 }

    fclose($handle);
} else {
echo "No text file has been found";} 

&GT;

和我的share.txt包含

\\server1\folder 
\\server2\folder 
\\server3\folder

在这种情况下,页面仅返回最后一个共享,而不是全部3。

有什么想法吗?

谢谢

1 个答案:

答案 0 :(得分:0)

看起来好像PHP没有正确识别行结尾。在这种情况下,它应该有助于激活

ini_set("auto_detect_line_endings", true);

这样PHP也可以正确处理以“\ r”为例的行。

有关详情,请参阅this评论。