php处理中文文件及文件夹的问题

在PHP文件UTF-8格式下,

file_exists 下需要中文编码格式为gbk 

所以一般使用

$path = iconv('utf-8', 'gbk', '/data/wwwroot/dvis/cp/video/测试目录/二级目录/中国航母.mp4');

这样子的格式,转换为gbk编码。

这样子的路径可以file_exists判断出来

但是发现个问题,当我想移动文件到另一个文件夹下是

rename($path, $dst); 返回false不能移动且重命名

如果目标为英文,只有文件名为中文,那么是可以执行的rename。

如果像上面的路径,是不行的。

换用copy($path, $dst);就可以了,然后再执行unlink($path);发现依然不能删除原始文件。

 

可以理解为rename unlink操作不能针对中文文件夹,可以对中文文件操作。、

具体原因还没有查到,先写个博客记录下

 

我擦,搞了半天,原来因为权限问题。LINUX的。filezilla这个ftp工具,对中文支持不好,导致改不了文件夹权限,一直没有注意权限问题就。

你可能感兴趣的:(PHP)