首页 » php » 正文

PHP报fopen($fileurl.’*’) [function.fopen]: failed to open stream:的解决办法

     今天小涛写读取文件时出现了这个错误:fopen($fileurl.’*’) [function.fopen]: failed to open stream:代码我是这样写的:

$log = ‘www.zoneself.org.log’;
$fp = fopen($log, “r+”);

     大体意思是没有权限,到ftp上右键www.zoneself.org.log这个文件的属性的时候,确实没有写入的权限,r+ 可读可写方式打开文件,从文件头开始读写
然后改为r就可以了,r 只读——读模式,打开文件,从文件头开始读

$log = ‘www.zoneself.org.log’;
$fp = fopen($log, “r”);

原来fopen有着几个参数可以选择:
fopen()函数是php5的系统函数用于打开文件,常见的方式有:r,r+;a,a+;w,w+;

r 只读——读模式,打开文件,从文件头开始读
r+ 可读可写方式打开文件,从文件头开始读写
w 只写——写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件已经存在,将删除文件已有内容;如果该文件不存在,则建立该文件
w+ 可读可写方式打开文件,同时把该文件内容清空,把文件指针指向文件开始处。如果该文件不存在,则建立该文件
a 追加 以只写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件
a+ 追加 以可读可写方式打开文件,把文件指针指向文件末尾处。如果该文件不存在,则建立该文件
b 二进制 用于于其他模式进行连接。建议使用该选项,以获得更大程度的可移植性

区别是开始就打开时候指针的指向头或者尾。或者就是开打后是否清楚原来的内容。

今天用iis上传了个网站,结果打开发现[function.fopen]: failed to open stream。因为这网站是纯文本的,无须mysql。查询了很多的资料,建议:

1.php.ini 把allow_url_fopen =on

2.把文件权限改为 777;

3.我的办法,直接把文件夹–属性–安全–用户权限—都打钩

技术分享,技术交流,小涛与您共同成长……

 

 

发表评论