php copy中文文件名文件

来源:互联网 发布:通过linux shell上网 编辑:程序博客网 时间:2024/05/20 05:04

现象:php 复制中文名的文件时,总是报错!

背景:php文件本身为utf-8编码,window操作系统默认的中文编码为gb2312

解决方案:

/**basename()的替代函数,解决basename无法处理中文的问题*/function get_basename($filename){    return preg_replace('/^.+[\\\\\\/]/', '', $filename);}

$file="测试.jpg";copy("directory/".iconv("UTF-8","gb2312",get_basename($file)),"todirectory/".iconv("UTF-8","gb2312",get_basename($file)));

测试通过!