PHP中file_exists()判斷中文文件名無(wú)效的解決方法
本文實(shí)例講述了PHP中file_exists()判斷中文文件名無(wú)效的解決方法。分享給大家供大家參考。具體方法如下:
php中判斷文件是否存在我們會(huì)使用file_exists函數(shù)或is_file函數(shù),但在使用file_exists時(shí)如果你文件名或路徑是中文在uft8編碼文檔時(shí)是無(wú)效。本文就來(lái)解決此問(wèn)題,下面我們一起來(lái)看看。
定義和用法:
file_exists() 函數(shù)檢查文件或目錄是否存在。
如果指定的文件或目錄存在則返回 true,否則返回 false。
例子1
echo file_exists("test.txt");
?>
輸出:
1
例子2
if(file_exists($realname)) {
// 永遠(yuǎn)都進(jìn)不了這里
}
else
{
echo 'www.dbjr.com.cn 提醒你文件不存在了';
}
輸出結(jié)果是 www.dbjr.com.cn 提醒你文件不存在了
但我很驚訝呀文件是存在了,并且路徑也沒(méi)有問(wèn)題php文件與中文.txt在同一目錄所以這樣寫(xiě)是沒(méi)有問(wèn)題,于時(shí)想想會(huì)不會(huì)是中文問(wèn)題,我對(duì)編碼進(jìn)行轉(zhuǎn)換
解決方案:
if(file_exists(iconv('UTF-8','GB2312',$realname))) {
// 這樣就可以支持了
}
結(jié)果顯示1 ,問(wèn)題解決了
此外還需要提醒大家,在php中最好不要使用中文名字,像apache,linux,php這些對(duì)中文支持不怎么好,所以大家盡量使用英文。
希望本文所述對(duì)大家的PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP實(shí)現(xiàn)Snowflake生成分布式唯一ID的方法示例
這篇文章主要給大家介紹了關(guān)于PHP實(shí)現(xiàn)Snowflake生成分布式唯一ID的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08thinkphp中U方法按路由規(guī)則生成url的方法
下面小編就為大家分享一篇thinkphp中U方法按路由規(guī)則生成url的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-03-03PHP常見(jiàn)數(shù)學(xué)函數(shù)及BC高精度數(shù)學(xué)函數(shù)用法示例
這篇文章主要介紹了PHP常見(jiàn)數(shù)學(xué)函數(shù)及BC高精度數(shù)學(xué)函數(shù)用法,簡(jiǎn)單列舉了php常見(jiàn)數(shù)學(xué)運(yùn)算函數(shù)并結(jié)合實(shí)例形式給出了bc高精度函數(shù)的功能與使用技巧,需要的朋友可以參考下2017-11-11php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence錯(cuò)誤的處理方法
在利用php解析xml時(shí)提示Invalid byte 1 of 1-byte UTF-8 sequence錯(cuò)誤了,這個(gè)問(wèn)題我百度查實(shí)說(shuō)是編碼問(wèn)題,結(jié)果我把編碼處理一下果然KO了,下面我來(lái)分享一下解決辦法2013-11-11PHP使用redis實(shí)現(xiàn)分布式鎖的示例詳解
分布式鎖是控制分布式系統(tǒng)之間同步訪問(wèn)共享資源的一種方式。實(shí)現(xiàn)分布式鎖的原理很簡(jiǎn)單,本文就將利用redis實(shí)現(xiàn)分布式鎖,感興趣的可以了解一下2022-11-11php ob_flush,flush在ie中緩沖無(wú)效的解決方法
一些版本的 Microsoft Internet Explorer 只有當(dāng)接受到的256個(gè)字節(jié)以后才開(kāi)始顯示該頁(yè)面,所以必須發(fā)送一些額外的空格來(lái)讓這些瀏覽器顯示頁(yè)面內(nèi)容。2010-05-05