gpt4 book ai didi

PHP:如何创建 unicode 文件名

转载 作者:可可西里 更新时间:2023-11-01 12:46:26 24 4
gpt4 key购买 nike

我正在尝试创建文件名中包含 Unicode 字符的文件。我不太清楚我应该使用什么编码,或者是否可能。

我有这个文件,以 latin1 编码保存:

$h = fopen("unicode_♫.txt", 'w');
fclose($h);

在 UTF-8 中,这将解码为“unicode_♫.txt”。它以 latin1 版本将其写入磁盘(这很明显?)。我需要将它保存为 UTF-8 解码时出现的样子。我也尝试过使用 UTF-16 对其进行编码,但这也不起作用。

我正在使用 PHP 5.2,并希望它能与 NTFS、ext3 和 ext4 一起使用。

如何做到这一点?

最佳答案

目前无法在 Windows 上完成(可能 PHP 5.4 将支持这种情况)。在 PHP 中,您只能使用 Windows 设置代码页编写文件名。如果代码页不包含字符 ,则不能使用它。更糟糕的是,如果您在 Windows 上有一个文件名中包含此类字符的文件,您将无法访问它。

在 Linux 中,至少在 ext* 中,这是一个不同的故事。您可以使用任何您想要的文件名,操作系统不关心编码。所以如果你一直使用 UTF-8 格式的文件名,你应该没问题。然而,UTF-16 被排除在外,因为文件名不能包含值为 0 的字节。

关于PHP:如何创建 unicode 文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6467501/

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