您好,登錄后才能下訂單哦!
這篇文章給大家介紹file_exists函數在PHP中不支持中文如何解決,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
一般來說PHP中常使用file_exists()判斷某個文件或者文件夾是否存在,如果存在則返回true,否則返回false。但是該函數在網頁使用UTF8編碼的情況下,對于中文的文件名或者文件夾名不能返回正確值,始終返回false。經測試之后得出解決方法,分析造成這一情況的原因應該是編碼不同而導致的PHP不能正確判斷。
下面這段代碼是不能夠返回正確值的代碼,無論文件是否在都返回不在:
<?php; $file="/attachment/21/0/中文.rar"; $newfile = dirname(__FILE__).$file; echo file_exists($newfile); ?>
經過測試之后,增加了一句將UTF8編碼轉換為GB2312編碼的語句,就可以正確判斷了:
<?php $file="/attachment/21/0/中文.rar"; $newfile = dirname(__FILE__).$file; $file=iconv('UTF-8','GB2312',$file); echo file_exists($newfile); ?>
關于file_exists函數在PHP中不支持中文如何解決就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。