我需要使用名稱中帶有重音符號的文件。不幸的是,它看起來像GLOB忽略這些文件。我已創建爲示範此短代碼:PHP 7 glob忽略帶重音符名稱的文件
$files = glob(dirname(__FILE__) . "/data/tracks/167/*.*");
foreach($files as $file) {
var_dump($file);
var_dump(file_exists($file));
}
輸出是:
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:13:string 'D:\data\zdroje\Kombinovane\MotoQuest\Web\admin/data/tracks/167/162_P1030721 (kopie).jpg' (length=87)
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:14:boolean true
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:13:string 'D:\data\zdroje\Kombinovane\MotoQuest\Web\admin/data/tracks/167/162_tn_P1030721 (kopie).jpg' (length=90)
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:14:boolean true
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:13:string 'D:\data\zdroje\Kombinovane\MotoQuest\Web\admin/data/tracks/167/1_1493222210_P1030721.jpg' (length=88)
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:14:boolean true
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:13:string 'D:\data\zdroje\Kombinovane\MotoQuest\Web\admin/data/tracks/167/1_1493222210_tn_P1030721.jpg' (length=91)
D:\data\zdroje\Kombinovane\MotoQuest\Web\admin\pokus.php:14:boolean true
我的目錄包含6個文件 - 2重音字符被忽略:
即使在使用這裏列出的提示時,file_exists也是如此 - PHP file_exists with accent returns false。
其中一個文件名是:
1_1493385948_tn_22-Ještěd21.jpeg
什麼想法,有什麼不對?
你可以複製該文件名到描述中,我的第一次嘗試獲得相同的行爲失敗(我使用strtwô,這工作) – sics
添加文件名。謝謝。 – user3523426