解析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 相关文章推荐
优化NFR之一 --MSSQL Hello Buffer Overflow
Oct 09 PHP
服务器变量 $_SERVER 的深入解析
Jul 02 PHP
使用PHP编写的SVN类
Jul 18 PHP
php数组合并array_merge()函数使用注意事项
Jun 19 PHP
今天你说520了吗?不仅有php表白书还有java表白神器
May 20 PHP
利用PHPExcel读取Excel的数据和导出数据到Excel
May 12 PHP
PHP实现的简单排列组合算法应用示例
Jun 20 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 PHP
laravel 如何实现引入自己的函数或类库
Oct 15 PHP
PHP中关于php.ini参数优化详解
Feb 28 PHP
PHP中abstract(抽象)、final(最终)和static(静态)原理与用法详解
Jun 05 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/12/05 PHP
PHP设计模式之结构模式的深入解析
2013/06/13 PHP
phpmyadmin打开很慢的解决方法
2014/04/21 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
2016/08/21 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
PHP多进程简单实例小结
2019/11/09 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
js操作textarea方法集合封装(兼容IE,firefox)
2011/02/22 Javascript
NodeJS与Mysql的交互示例代码
2013/08/18 NodeJs
jQuery插件实现无缝滚动特效
2015/11/24 Javascript
js确认框confirm()用法实例详解
2016/01/07 Javascript
JavaScript设计模式经典之命令模式
2016/02/24 Javascript
浅谈js多维数组和hash数组定义和使用
2016/07/27 Javascript
仿iframe效果Aajx文件上传实例
2016/11/18 Javascript
微信小程序-详解数据缓存
2016/11/24 Javascript
JS基于面向对象实现的拖拽功能示例
2016/12/20 Javascript
将input框中输入内容显示在相应的div中【三种方法可选】
2017/05/08 Javascript
详解bootstrap导航栏.nav与.navbar区别
2017/11/23 Javascript
使用Vue开发一个实时性时间转换指令
2018/01/17 Javascript
vue中的过滤器及其时间格式化问题
2020/04/09 Javascript
在Python中移动目录结构的方法
2016/01/31 Python
Python中类型检查的详细介绍
2017/02/13 Python
Python http接口自动化测试框架实现方法示例
2018/12/06 Python
Jupyter加载文件的实现方法
2020/04/14 Python
python如何实时获取tcpdump输出
2020/09/16 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
2020/11/06 Python
Pytorch模型迁移和迁移学习,导入部分模型参数的操作
2021/03/03 Python
css3的图形3d翻转效果应用示例
2014/04/08 HTML / CSS
Muziker英国:中欧最大的音乐家商店
2020/02/05 全球购物
英国在线购买轮胎、预订汽车、汽车维修和装配网站:Protyre
2020/04/12 全球购物
办公室驾驶员岗位职责
2013/11/15 职场文书
文明餐桌活动方案
2014/02/11 职场文书
2014年幼儿园教师工作总结
2014/11/08 职场文书
现实表现材料范文
2014/12/23 职场文书
生死抉择观后感
2015/06/09 职场文书
面试官问我Mysql的存储引擎了解多少
2022/08/05 MySQL