[英]PHP scandir filenames with Turkish characters
我正在使用 PHP scandir 列出文檔。 我對一些字符有問題,比如 ğ, ı, ş... 所以這是我的代碼;
$directory = "document";
$scanned_directory = array_diff(scandir($directory, 1), array('..', '.'));
foreach ($scanned_directory as &$value) {
echo utf8_encode($value);
}
實際上文件名是“şığx.jpg”,但輸出是“þýðx.jpg”。 utf8_encode 沒有解決這個問題。 你能幫助我嗎? 謝謝你。
utf8_encode
在這里對您沒有幫助,因為您的文件系統可能采用不同的編碼。 用
echo iconv($in_charset, 'UTF-8', $value);
其中$in_charset
可能是ISO-8859-9
、 windows-1254
或CP857
。
或者,如果您還沒有嘗試過,也許您的文件系統已經是 utf 格式了 ;)。
我有同樣的問題,我的系統使用 CP857。 如何從 CP857 轉換為 UTF-8?
該網站https://doc.bccnsoft.com/docs/php-docs-7-en/mbstring.supported-encodings.html聲稱 PHP 7 不支持 CP857。 但我不想相信這一點。
我找到了一些其他網站我會檢查它: https : //www.phpclasses.org/package/1360-PHP-Conversion-between-many-character-set-encodings.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.