PHP中文俱乐部's Archiver

polo1 发表于 2007-4-6 06:50

关于file_get_contents总是出错的问题,求助!

我在服务器上执行这段代码
[QUOTE]
$filename="http://www.sattorney.net/contents.txt";
$html=file_get_contents($filename);
echo $html;[/QUOTE]
用来远程调用文件的时候经常出现CPU占用率100%,然后在系统错误报告里显示
[QUOTE]
[Fri Mar 23 21:04:22 2007] [error] PHP Warning:  file_get_contents([url]http://www.sattorney.net/contents.txt[/url]) [<a href='function.file-get-contents'>function.file-get-contents</a>]: failed to open stream: HTTP request failed!  in /home/look/public_html/includes/c.php on line 8
[/QUOTE]

请问各位高手这到底是怎么回事?谢了

InterLover 发表于 2007-4-9 10:13

回复: 关于file_get_contents总是出错的问题,求助!

和 file() 一样,只除了 file_get_contents() 把文件读入一个字符串。将在参数 offset 所指定的位置开始读取长度为 maxlen 的内容。如果失败,file_get_contents() 将返回 FALSE。

file_get_contents() 函数是用来将文件的内容读入到一个字符串中的首选方法。如果操作系统支持还会使用内存映射技术来增强性能。

注意:
如果要打开有特殊字符的 URL (比如说有空格),就需要使用 urlencode() 进行 URL 编码。

注意:
context 参数可以用 NULL 来忽略。

更新日志
版本 说明
5.0.0 添加了对 context 的支持。  
5.1.0 添加了 offset 和 maxlen 参数。  

注释
注意:
本函数可安全用于二进制对象。

提示:
如果“fopen wrappers”已经被激活,则在本函数中可以把 URL 作为文件名来使用。请参阅 fopen() 函数来获取怎样指定文件名的详细信息以及支持 URL 封装协议的列表:附录 M, 支持的协议/封装协议列表。

还是fopen

风卷残云 发表于 2007-4-10 17:22

回复: 关于file_get_contents总是出错的问题,求助!

failed to open stream:

网址写的对吗?

distian 发表于 2007-4-12 11:06

回复: 关于file_get_contents总是出错的问题,求助!

首先你最好用
file_exsits( $strFilePathName );
这个函数确定一下文件是否真的存在
[PHP]
$filename="http://www.sattorney.net/contents.txt";
if( file_exist( $filename ) )
  html=file_get_contents($filename);
else
  return false;
[/PHP]

murder 发表于 2007-9-19 12:16

回复: 关于file_get_contents总是出错的问题,求助!

用 fopen fgets

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.