[英]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.