重命名不支持多字节字符 [英] rename not supporting multi-byte characters

查看:115
本文介绍了重命名不支持多字节字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我写:

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆