解析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 相关文章推荐
mysql中存储过程、函数的一些问题
Feb 14 PHP
PHP iconv 函数转gb2312的bug解决方法
Oct 11 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
Jun 02 PHP
详解PHP导入导出CSV文件
Nov 03 PHP
PHP中使用php5-ffmpeg撷取视频图片实例
Jan 07 PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
Sep 30 PHP
PHP生成短网址方法汇总
Jul 12 PHP
thinkPHP5.0框架命名空间详解
Mar 18 PHP
php事务回滚简单实现方法示例
Mar 28 PHP
thinkPHP实现的联动菜单功能详解
May 05 PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
Aug 03 PHP
thinkphp5 加载静态资源路径与常量的方法
Dec 24 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
php4的session功能评述(三)
2006/10/09 PHP
MySQL授权问题总结
2007/05/06 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
图文详解PHP环境搭建教程
2016/07/16 PHP
PHP命名空间namespace的定义方法详解
2017/03/29 PHP
PHP+Ajax实现的无刷新分页功能详解【附demo源码下载】
2017/07/03 PHP
PHP给前端返回一个JSON对象的实例讲解
2018/05/31 PHP
网站页面自动跳转实现方法PHP、JSP(下)
2010/08/01 Javascript
JS中的substring和substr函数的区别说明
2013/05/07 Javascript
jquery动态增加删除表格行的小例子
2013/11/14 Javascript
Jquery操作js数组及对象示例代码
2014/05/11 Javascript
理解javascript异步编程
2016/01/27 Javascript
微信公众号 摇一摇周边功能开发
2016/12/08 Javascript
微信小程序 解决请求服务器手机预览请求不到数据的方法
2017/01/04 Javascript
jQuery表单设置值的方法
2017/06/30 jQuery
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
JS实现点击复选框变更DIV显示状态的示例代码
2017/12/18 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
2018/11/02 Javascript
浅谈在Vue.js中如何实现时间转换指令
2019/01/06 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
JQuery animate动画应用示例
2019/05/14 jQuery
Vue SSR 即时编译技术的实现
2020/05/06 Javascript
Pytorch 中retain_graph的用法详解
2020/01/07 Python
Keras 中Leaky ReLU等高级激活函数的用法
2020/07/05 Python
一篇文章带你学习CSS3图片边框
2020/11/04 HTML / CSS
德国低价购买灯具和家具网站:Style-home.de
2016/11/25 全球购物
Tomcat Mysql datasource数据源配置
2015/12/28 面试题
师范应届毕业生自荐信
2013/11/18 职场文书
爱情检讨书大全
2014/01/21 职场文书
多媒体专业自我鉴定
2014/02/28 职场文书
市场调研项目授权委托书范本
2014/10/04 职场文书
龙猫观后感
2015/06/09 职场文书
2016年校园重阳节广播稿
2015/12/18 职场文书
如何在Python中创建二叉树
2021/03/30 Python
80行代码写一个Webpack插件并发布到npm
2021/05/24 Javascript
解决pycharm安装scrapy DLL load failed:找不到指定的程序的问题
2021/06/08 Python