PHP中file_exists()判斷中文文件名無效的解決方法
本文實例講述了PHP中file_exists()判斷中文文件名無效的解決方法。分享給大家供大家參考。具體方法如下:
php中判斷文件是否存在我們會使用file_exists函數(shù)或is_file函數(shù),但在使用file_exists時如果你文件名或路徑是中文在uft8編碼文檔時是無效。本文就來解決此問題,下面我們一起來看看。
定義和用法:
file_exists() 函數(shù)檢查文件或目錄是否存在。
如果指定的文件或目錄存在則返回 true,否則返回 false。
例子1
echo file_exists("test.txt");
?>
輸出:
1
例子2
if(file_exists($realname)) {
// 永遠都進不了這里
}
else
{
echo 'www.dhdzp.com 提醒你文件不存在了';
}
輸出結(jié)果是 www.dhdzp.com 提醒你文件不存在了
但我很驚訝呀文件是存在了,并且路徑也沒有問題php文件與中文.txt在同一目錄所以這樣寫是沒有問題,于時想想會不會是中文問題,我對編碼進行轉(zhuǎn)換
解決方案:
if(file_exists(iconv('UTF-8','GB2312',$realname))) {
// 這樣就可以支持了
}
結(jié)果顯示1 ,問題解決了
此外還需要提醒大家,在php中最好不要使用中文名字,像apache,linux,php這些對中文支持不怎么好,所以大家盡量使用英文。
希望本文所述對大家的PHP程序設(shè)計有所幫助。
相關(guān)文章
使用NetBeans + Xdebug調(diào)試PHP程序的方法
前些天發(fā)現(xiàn)通過Notepad++的DBGP插件結(jié)合PHP的xdebug擴展可以實現(xiàn)PHP文件調(diào)試,同時,介紹說包含了單步調(diào)試、監(jiān)視變量還有跨文件調(diào)試。2011-04-04

