解析php file_exists無效的解決辦法
更新時(shí)間:2013年06月26日 09:06:12 作者:
本篇文章是對(duì)php中file_exists無效的解決辦法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
方法1 :據(jù)官方手冊(cè)上描述若php教程的safe mode相關(guān)的設(shè)置過于苛刻,就會(huì)出現(xiàn)這樣的情形:盡管文件真實(shí)存在也被誤報(bào),認(rèn)為文件不存在。
由于服務(wù)器端的php.ini我們無法操縱,當(dāng)用ini_set()也關(guān)閉不了safe mode模式,我們只有退而求其次,找一個(gè)更可靠、安全的檢測方法來檢測文件是否存在。我們可以借助 $_server['document_root'] 來加以實(shí)現(xiàn)。$_server['document_root'] 返回的是網(wǎng)站的根目錄,該目錄的最后一個(gè)子目錄不包含目錄標(biāo)志符號(hào)“/”,如:
d:/www/htdocs
有了根目錄,再加上需要檢測的文件的路徑,我們將得到一個(gè)絕對(duì)的路徑,php就可以順利使用file_exists()函數(shù)對(duì)之進(jìn)行檢測。上述代碼我們只需要更改第一行為(注意,我們?cè)赾onfig.php之前加上了符號(hào)“/”):
$file=$_server['document_root']."/config.php";
如此,代碼的執(zhí)行就很可信,不會(huì)出現(xiàn)預(yù)期以外的結(jié)果。
以上方法同樣適用于目錄(is_dir())或文件(is_file())的相關(guān)檢測函數(shù),能夠檢測出被安全保護(hù)的目錄或文件是否存在。
最后順便提一下:這類被php特殊設(shè)置所保護(hù)的文件在引用(include和require)時(shí)不必加上$_server['document_root']路徑,因?yàn)椋鶕?jù)php說明文檔,它們是允許引用的。
方法2:本人的情況是因?yàn)槲募趙indows和linux之間來回的移動(dòng)。造成linux下文件和目錄的訪問權(quán)限被改變,導(dǎo)致出文件除擁有者外其他均無訪問權(quán)限。使用chmod -r 755 xxx/* 解決了問題。
由于服務(wù)器端的php.ini我們無法操縱,當(dāng)用ini_set()也關(guān)閉不了safe mode模式,我們只有退而求其次,找一個(gè)更可靠、安全的檢測方法來檢測文件是否存在。我們可以借助 $_server['document_root'] 來加以實(shí)現(xiàn)。$_server['document_root'] 返回的是網(wǎng)站的根目錄,該目錄的最后一個(gè)子目錄不包含目錄標(biāo)志符號(hào)“/”,如:
d:/www/htdocs
有了根目錄,再加上需要檢測的文件的路徑,我們將得到一個(gè)絕對(duì)的路徑,php就可以順利使用file_exists()函數(shù)對(duì)之進(jìn)行檢測。上述代碼我們只需要更改第一行為(注意,我們?cè)赾onfig.php之前加上了符號(hào)“/”):
$file=$_server['document_root']."/config.php";
如此,代碼的執(zhí)行就很可信,不會(huì)出現(xiàn)預(yù)期以外的結(jié)果。
以上方法同樣適用于目錄(is_dir())或文件(is_file())的相關(guān)檢測函數(shù),能夠檢測出被安全保護(hù)的目錄或文件是否存在。
最后順便提一下:這類被php特殊設(shè)置所保護(hù)的文件在引用(include和require)時(shí)不必加上$_server['document_root']路徑,因?yàn)椋鶕?jù)php說明文檔,它們是允許引用的。
方法2:本人的情況是因?yàn)槲募趙indows和linux之間來回的移動(dòng)。造成linux下文件和目錄的訪問權(quán)限被改變,導(dǎo)致出文件除擁有者外其他均無訪問權(quán)限。使用chmod -r 755 xxx/* 解決了問題。
相關(guān)文章
php數(shù)組函數(shù)序列之rsort() - 對(duì)數(shù)組的元素值進(jìn)行降序排序
rsort() 函數(shù)對(duì)數(shù)組的元素按照鍵值進(jìn)行逆向排序。與 arsort() 的功能基本相同。注釋:該函數(shù)為 array 中的單元賦予新的鍵名。這將刪除原有的鍵名而不僅是重新排序。2011-11-11php使用mysqli和pdo擴(kuò)展,測試對(duì)比連接mysql數(shù)據(jù)庫的效率完整示例
這篇文章主要介紹了php使用mysqli和pdo擴(kuò)展,測試對(duì)比連接mysql數(shù)據(jù)庫的效率,結(jié)合完整實(shí)例形式對(duì)比分析了php分別使用mysqli和pdo擴(kuò)展連接mysql數(shù)據(jù)庫的執(zhí)行時(shí)間,需要的朋友可以參考下2019-05-05基于PHP實(shí)現(xiàn)一個(gè)簡單的在線聊天功能
這篇文章主要介紹了基于PHP實(shí)現(xiàn)一個(gè)簡單的在線聊天功能,對(duì)類似功能感興趣的同學(xué),要著重看一下2021-04-04淺談PHP的exec()函數(shù)無返回值排查方法(必看)
下面小編就為大家?guī)硪黄獪\談PHP的exec()函數(shù)無返回值排查方法(必看)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-03-03php使用Jpgraph創(chuàng)建柱狀圖展示年度收支表效果示例
這篇文章主要介紹了php使用Jpgraph創(chuàng)建柱狀圖展示年度收支表效果,結(jié)合完整實(shí)例形式分析了Jpgraph創(chuàng)建柱狀圖的具體步驟與操作技巧,需要的朋友可以參考下2017-02-02