首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP is_writable错误返回不可写

PHP is_writable错误返回不可写
EN

Stack Overflow用户
提问于 2013-11-27 18:27:24
回答 2查看 5.5K关注 0票数 1

我有这个代码

代码语言:javascript
复制
if(is_writable($destination)){ 
  print "destination is writable"; 
}
else { 
 print "destination is not writable"; 
}

$destination是一个与../subdir/dir/currectDir/类似的相对路径,我检查过了,权限是777,但上面的代码返回"destination is not writable“,我不明白为什么。有人能帮我吗?谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-11-27 18:43:04

除了权限之外,还有许多原因导致目录不可写。其中一些是:

由于restrictions

  • The目录位于以只读方式挂载的驱动器上,因此该目录位于PHP能够写入的路径之外。

  • 该目录设置了不可变或仅附加属性

  • filesystem is corrupt

然而,在这种情况下,我的猜测是您使用的路径不正确。尝试运行

代码语言:javascript
复制
echo getcwd();

就在您的is_writable()调用之前。

它将告诉您运行PHP脚本的当前目录,从那里您应该能够计算出正确的相对路径。这并不是说,如果从命令行运行PHP脚本,它的路径将是当前目录的路径,而通过Apache等web服务器运行时,它通常是public_html或httpdocs目录。在脚本执行之前,它也可能已经被更改了。

您还可以指定绝对路径(例如/home/youruser/public_html/subdir/dir/currectDir)

票数 3
EN

Stack Overflow用户

发布于 2013-11-27 18:33:26

我无法评论,所以我不得不在这里回应,但看起来路径(您发布的是相对路径,顺便说一句,不是绝对路径)是不正确的-您尝试过吗

代码语言:javascript
复制
var_dump(file_exists($destination));

首先,确定您是否在目录的正确位置查找?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20239854

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档