运行时出现这条警告:Warning: fwrite(): supplied argument is not a valid stream resource in F:\php\apache\htdocs\2-1.php on line 5
我怀疑是不是我没有写的权利,于是这么写:
if(fopen("test.php","w"))
echo "可以读!";
else echo "不可读!!";
if(fwrite("test.php","哈哈")) echo"可以写!";
else echo"不可写!!";
?>
之后运行,出现下面文字:
可以读!
Warning: fwrite(): supplied argument is not a valid stream resource in F:\php\apache\htdocs\2-1.php on line 5
不可写!!
果然我不能写入,这到底是怎么回事?
哪位大哥大姐帮帮小弟....
为什么PHP中不能写?是不是配置错?
答案:5 悬赏:10 手机版
解决时间 2021-01-24 22:41
- 提问者网友:美人性情
- 2021-01-24 05:13
最佳答案
- 五星知识达人网友:佘樂
- 2021-01-24 06:51
因为你的fwrite没有获得句柄
if(fwrite("test.php","哈哈"))
这句是错误的, 应该写为:
if(fwrite(fopen("test.php", 'w'),"哈哈"))
fwrite的第一个参数必须是 fopen() 或者 fsockopen() 返回的句柄
if(fwrite("test.php","哈哈"))
这句是错误的, 应该写为:
if(fwrite(fopen("test.php", 'w'),"哈哈"))
fwrite的第一个参数必须是 fopen() 或者 fsockopen() 返回的句柄
全部回答
- 1楼网友:骨子里都是戏
- 2021-01-24 09:52
这个要检查权限问题了
如果是虚拟主机,就用ftp上去,改目录属性
- 2楼网友:一把行者刀
- 2021-01-24 09:39
php的zip模块运行库找不到.
查查文件 /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/php_zip.dll 是否存在.如不存在则可能php的包有问题. 或者打开php的配置文件,将zip模块配置 相关的注释掉.
- 3楼网友:轮獄道
- 2021-01-24 08:11
mfboy 正解。
看你的习惯。你可以写成这样
$fp = @fopen("test.php","w");
if($fp)
echo "可以读!";
else
echo "不可读!!";
if(fwrite($fp,"哈哈"))
echo"可以写!";
else
echo"不可写!!";
?>
$fp 返回的是一个句柄,如果文件不能打开,fopen 会返回 false 给它的。
- 4楼网友:醉吻情书
- 2021-01-24 07:20
二楼,正解!!!!!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯