gpt4 book ai didi

php - 在 Windows 上列出包含 Unicode 字符的目录

转载 作者:可可西里 更新时间:2023-11-01 13:58:56 25 4
gpt4 key购买 nike

我正在使用 Windows 2003 编写一些 PHP 代码。我使用 XAMPP Portable(复制到 D:)。问题:

$path = 'D:\ebooks';
$all_file = scandir($path);
foreach ($all_file as $file) {
if (is_dir("$path/$file") && $file != '.' && $file != '..') {
echo $file . "<br />\n";
}
}

当我调用脚本(使用浏览器)时,我没有看到任何包含 Unicode 字符的目录(在 D:\ebooks 中)(我用越南语、日语、中文、捷克语进行了测试)。

但是如果我删除 is_dir("$path/$file"),目录会显示许多奇怪的字符和许多 ??? 字符。

我该如何解决这个问题?

最佳答案

不幸的是,有很多与 PHP 访问 Windows 文件系统相关的错误。虽然 Windows 确实将文件名存储为 UTF-16,但 PHP 的内部结构使用更旧的 ANSI api。因此,最好只处理 ascii 范围内的文件名,或者切换到不同的操作系统。

关于php - 在 Windows 上列出包含 Unicode 字符的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10008341/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com