上传文件中使用中文名乱码解决
- 首先,我们一般写php程序,都会使用utf8编码来显示网页。但是我们Windows的文件名不支持utf8,如果用utf8写文件名会出现乱码,这个时候我们的解决办法就是把文件名字从utf8编码转到Windows能识别的文件目录,即gbk编 码。
- iconv命令可以将一种已知的字符集文件转换成另一种已知的字符集文件。
函数原型:string iconv ( string in_charset, string out_charset, string str )
<?php
iconv("UTF-8", "GBK", $path)
?>
php利用mkdir创建多级目录
mkdir($path,0777,true);
第一个参数:必须,代表要创建的多级目录的路径;
第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权;
第三个参数:true表示允许创建多级目录。
举例代码(支持创建中文目录):
<?php
header("Content-type:text/html;charset=utf-8");
//要创建的多级目录
$path="dai/php/php学习";
//判断目录存在否,存在给出提示,不存在则创建目录
if (is_dir($path)){
echo "对不起!目录 " . $path . " 已经存在!";
}else{
//第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码
$res=mkdir(iconv("UTF-8", "GBK", $path),0777,true);
if ($res){
echo "目录 $path 创建成功";
}else{
echo "目录 $path 创建失败";
}
}
?>