解析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 相关文章推荐
GBK的页面输出JSON格式的php函数
Feb 16 PHP
PHP初学者常见问题集合 修正版(21问答)
Mar 23 PHP
PHP下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
Jun 09 PHP
数据库中排序的对比及使用条件详解
Feb 23 PHP
destoon实现调用图文新闻的方法
Aug 21 PHP
PHP消息队列用法实例分析
Feb 12 PHP
php自定义截取中文字符串-utf8版
Feb 27 PHP
PHP使用GD库制作验证码的方法(点击验证码或看不清会刷新验证码)
Aug 15 PHP
PHP后台实现微信小程序登录
Aug 03 PHP
实例分析PHP将字符串转换成数字的方法
Jan 27 PHP
laravel 时间格式转时间戳的例子
Oct 11 PHP
php下的原生ajax请求用法实例分析
Feb 28 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
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
PHP5函数小全(分享)
2013/06/06 PHP
推荐10个提供免费PHP脚本下载的网站
2014/12/31 PHP
php官方微信接口大全(微信支付、微信红包、微信摇一摇、微信小店)
2015/12/21 PHP
php数组函数array_walk用法示例
2016/05/26 PHP
thinkPHP中_initialize方法实例分析
2016/12/05 PHP
thinkPHP实现签到功能的方法
2017/03/15 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
PHP中SESSION过期设置
2021/03/09 PHP
JavaScript 给汉字排序实例代码
2008/06/28 Javascript
xml 封装与解析(javascript和C#中)
2009/07/26 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
对Js OOP编程 创建对象的一些全面理解
2016/07/26 Javascript
javascript中的 object 和 function小结
2016/08/14 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
2016/11/25 Javascript
JavaScript自定义分页样式
2017/01/17 Javascript
JavaScript 总结几个提高性能知识点(推荐)
2017/02/20 Javascript
js,jq,css多方面实现简易下拉菜单功能
2017/05/13 Javascript
在vue中,v-for的索引index在html中的使用方法
2018/03/06 Javascript
Vue 中对图片地址进行拼接的方法
2018/09/03 Javascript
详解vue中localStorage的使用方法
2018/11/22 Javascript
nodejs二进制与Buffer的介绍与使用
2019/07/11 NodeJs
javascript操作向表格中动态加载数据
2020/08/27 Javascript
如何利用node转发请求详解
2020/09/17 Javascript
vue 计算属性和侦听器的使用小结
2021/01/25 Vue.js
[01:02:48]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Liquid
2018/04/03 DOTA
在Python的setuptools框架下生成egg的教程
2015/04/13 Python
Python端口扫描简单程序
2016/11/10 Python
详解python里使用正则表达式的全匹配功能
2017/10/19 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
Python实现一个论文下载器的过程
2021/01/18 Python
CSS3实现div从下往上滑入滑出效果示例
2020/04/28 HTML / CSS
《池塘边的叫声》教学反思
2014/04/12 职场文书
南京青奥会口号
2014/06/12 职场文书
MySQL 全文检索的使用示例
2021/06/07 MySQL
Python中time与datetime模块使用方法详解
2022/03/31 Python