2011-11-02 41 views
1
$fp = fopen($myFile, "r"); 

//if echo $fp => I GOT NULL 

fclose($fp); 

但是,如果我做file_get_contents($myFile);我得到了该文件的字符串数据。

我的文件(Fedora的OS)

-rw-r--r-- 1 apache appli 104 2 nov. 12:54 12_62_xxx.log 
+0

你有该文件的权限吗? – JackTurky

+2

是因为file_get_contents($ myFile)我得到了文件内容。 – sophie

+0

使用'var_dump'而不是'echo'来找出'$ fp'确实是什么:'var_dump($ fp)'; – hakre

回答

6

$fp是一个手柄,它不是从文件中的一些真实的数据。您可以在其他功能中使用此句柄,例如freadfclosefile_get_contents内部打开文件,读取它,关闭文件并返回字符串。这就是为什么当你打印最后一个结果时,你会得到文件的内容。

尝试echo fgets($fp),看看你得到什么。

+0

+1,但当回显'$ fp'时,他们应该仍然会看到'Resource id#n' – Phil

+0

yes当fgets($ fp)时,我得到了文件的内容。 – sophie

相关问题