解析php file_exists无效的解决办法


Posted in PHP onJune 26, 2013

方法1 :据官方手册上描述若php教程的safe mode相关的设置过于苛刻,就会出现这样的情形:尽管文件真实存在也被误报,认为文件不存在。

由于服务器端的php.ini我们无法操纵,当用ini_set()也关闭不了safe mode模式,我们只有退而求其次,找一个更可靠、安全的检测方法来检测文件是否存在。我们可以借助 $_server['document_root'] 来加以实现。$_server['document_root'] 返回的是网站的根目录,该目录的最后一个子目录不包含目录标志符号“/”,如:
d:/www/htdocs
有了根目录,再加上需要检测的文件的路径,我们将得到一个绝对的路径,php就可以顺利使用file_exists()函数对之进行检测。上述代码我们只需要更改第一行为(注意,我们在config.php之前加上了符号“/”):
$file=$_server['document_root']."/config.php";
如此,代码的执行就很可信,不会出现预期以外的结果。
以上方法同样适用于目录(is_dir())或文件(is_file())的相关检测函数,能够检测出被安全保护的目录或文件是否存在。

最后顺便提一下:这类被php特殊设置所保护的文件在引用(include和require)时不必加上$_server['document_root']路径,因为,根据php说明文档,它们是允许引用的。

方法2:本人的情况是因为文件在windows和linux之间来回的移动。造成linux下文件和目录的访问权限被改变,导致出文件除拥有者外其他均无访问权限。使用chmod -r 755 xxx/* 解决了问题。

PHP 相关文章推荐
Php部分常见问题总结
Oct 09 PHP
基于文本的搜索
Oct 09 PHP
分享一下贝贝成长进度的php代码
Sep 14 PHP
深入解析PHP内存管理之谁动了我的内存
Jun 20 PHP
Yii中使用PHPExcel导出Excel的方法
Dec 26 PHP
php的4种常见运行方式
Mar 20 PHP
PHP中error_reporting()用法详解
Aug 31 PHP
学习php设计模式 php实现状态模式
Dec 07 PHP
PHP页面输出搜索后跳转下一页的处理方法
Sep 30 PHP
php+resumablejs实现的分块上传 断点续传功能示例
Apr 18 PHP
PHP实现文字写入图片功能
Feb 18 PHP
PHP htmlspecialchars_decode()函数用法讲解
Mar 01 PHP
使用HMAC-SHA1签名方法详解
Jun 26 #PHP
php读取文件内容的几种方法详解
Jun 26 #PHP
深入file_get_contents与curl函数的详解
Jun 25 #PHP
解析如何去掉CodeIgniter URL中的index.php
Jun 25 #PHP
解析php入库和出库
Jun 25 #PHP
解析php下载远程图片函数 可伪造来路
Jun 25 #PHP
解析php通过cookies获取远程网页的指定代码
Jun 25 #PHP
You might like
PHP自动生成月历代码
2006/10/09 PHP
Notice: Undefined index: page in E:\PHP\test.php on line 14
2010/11/02 PHP
php之curl实现http与https请求的方法
2014/10/21 PHP
Javascript的一种模块模式
2010/09/08 Javascript
基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解
2013/05/07 Javascript
jquery 页面滚动到指定DIV实现代码
2013/09/25 Javascript
jQuery-ui引入后Vs2008的无智能提示问题解决方法
2014/02/10 Javascript
javascript页面渲染速度测试脚本分享
2014/04/15 Javascript
JavaScript使用indexOf获得子字符串在字符串中位置的方法
2015/04/06 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
2015/12/20 Javascript
解析Node.js异常处理中domain模块的使用方法
2016/02/16 Javascript
js获取页面及个元素高度、宽度的代码
2016/04/26 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
深入理解AngularJS中的ng-bind-html指令
2017/03/27 Javascript
jQuery DOM节点的遍历方法小结
2017/08/15 jQuery
微信小程序实现即时通信聊天功能的实例代码
2018/08/17 Javascript
JS返回页面时自动回滚到历史浏览位置
2018/09/26 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
Vue记住滚动条和实现下拉加载的完美方法
2020/07/31 Javascript
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
python实现文件分组复制到不同目录的例子
2014/06/04 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
2020/04/23 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
django中ORM模型常用的字段的使用方法
2019/03/05 Python
django foreignkey外键使用的例子 相当于left join
2019/08/06 Python
python语言线程标准库threading.local解读总结
2019/11/10 Python
如何使用pandas读取txt文件中指定的列(有无标题)
2020/03/05 Python
使用Python+Appuim 清理微信的方法
2021/01/26 Python
python的scipy.stats模块中正态分布常用函数总结
2021/02/19 Python
颇特女士香港官网:NET-A-PORTER香港
2021/03/08 全球购物
毕业生的自我评价分享
2013/12/18 职场文书
初三物理教学反思
2014/01/21 职场文书
美容院店长岗位职责
2014/04/08 职场文书
离婚协议书怎么写(范本参考)
2014/09/30 职场文书
2015夏季作息时间调整通知
2015/04/24 职场文书
在Django中使用MQTT的方法
2021/05/10 Python