重命名不支持多字节字符 [英] rename not supporting multi-byte characters
本文介绍了重命名不支持多字节字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果我写:
rename('php109.tmp','test.jpg');
那么就可以了.
但是如果我将其更改为:
but if I change it into:
rename('php109.tmp','中文.jpg');
它将报告
没有这样的文件或目录...".
"No such file or directory...".
但是如果可以将多字节字符写入数据库然后可以读出,那么为什么在重命名字符时失败?
But if the multi-byte characters can be written into database then can be read out, then why it fails when it is renamed ?
推荐答案
该示例应该会有所帮助,您应该找到您的语言代码页并替换为该代码页.我测试了波纹管代码,并且在Windows中可以使用阿拉伯/波斯名称:
This Sample Should Helps , You Should Find Your Language Code Page And Replace With That. I Test Bellow Code And It Works In Windows For Arabic/Persian Names:
$newname = iconv("utf-8", "cp1256","گچپژ");
echo rename("1.txt", $newname);
这篇关于重命名不支持多字节字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文