php中函数move_uploaded_file()移动中文文件报错的解决方法
Posted afew
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php中函数move_uploaded_file()移动中文文件报错的解决方法相关的知识,希望对你有一定的参考价值。
在windos中文系统上要求传入的参数如果有中文必须是GBK编码
1、用iconv()转换字符集代码如下
$target_pt = ‘./uploads/‘.uniqid().‘-‘.$images[‘name‘];
//windows下支持中文名字上传
$upload_file_pt = iconv("UTF-8", "GB2312", $target_pt);
if (!move_uploaded_file($images[‘tmp_name‘], $upload_file_pt)) {
$GLOBALS[‘error_message‘] = ‘上传失败‘;
return;
}
2、直接自己取名字用uniqid()获取名字,用pathinfo()获取后缀名代码如下
$ext=pathinfo($_FILES[‘avatar‘][‘name‘], PATHINFO_EXTENSION);
$target = ‘uploads/‘.uniqid().‘.‘.$ext;
if (!move_uploaded_file($_FILES[‘avatar‘][‘tmp_name‘], $target)) {
$GLOBALS[‘error_message‘] = ‘上传文件失败‘;
return;
}
以上是关于php中函数move_uploaded_file()移动中文文件报错的解决方法的主要内容,如果未能解决你的问题,请参考以下文章
PHP中调用move_uploaded_file函数提示failed to open stream和 Unable to move
php中函数move_uploaded_file()移动中文文件报错的解决方法
PHP 文件上传之常见问题($_FILES为空,move_uploaded_file()函数报错)
解决PHP move_uploaded_file函数移动图片失败