后端开发|PHP问题
php,乱码
后端开发-PHP问题
体验站点源码,vscode 终端不能用,ubuntu 变成访客,tomcat下指定jdk,爬虫数据缓存,php 访问静态方法,福州seo关键词收费,上传下载类网站源码,后台管理模板 html5lzw
本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。
应用制作网站源码,vscode现实对齐线,ubuntu登录 命令,tomcat 下载404,sqlite设置文件头长度,爬虫软件前期要花多少钱,传智播客php就业班视频,中山seo优化案例,帝国网站管理系统采集,网页滚动字幕代码,angularjs oa模板lzw
如何解决php文件中文名乱码问题?
智能客服聊天系统源码,ubuntu软件源英语,tomcat服务器线程模型,爬虫养什么动物,php数据库博客源码,亚马逊seo项目lzw
php上传文件中文文件名乱码的解决方法
文件上传是我们在处理表单提交时候最常用的功能之一,今天写了一个小小的demo,如下:
先看结构:
html为表单提交的页面,php为处理表单的文件,upload为上传文件所放的位置
html:
php:
$file = $_FILES["file"];if ($file["error"] > 0) { echo "错误:" . $file["error"];} else { echo "文件名称:" . $file["name"] . ""; echo "文件类型:" . $file["type"] . ""; echo "文件大小:" . ($file["size"] / 1024) . "K"; echo "文件临时存储的位置:" . $file["tmp_name"] . ""; //保存上传的文件 if (file_exists("upload" . $file["name"])) { echo $file["name"] . "文件已经存在"; } else { //如果目录不存在则将该文件上传 move_uploaded_file($file[ mp_name], "upload/" . $file["name"]); echo 文件上传成功!; }}
我上传了个.txt的文件,如下:
执行:
可以看到十分的顺利,那看看结果吧 :
此时上传的文件是我们想要的,但是却出现了乱码的情况,嗯,好,那就来解决吧,:
首先,在php文件的头部加这么一段代码:
header("Content-type: text/html; charset=utf-8");
然后定义一个变量:
$name = iconv(utf-8,gb2312,"upload/".$file["name"]);
好,那我们看看整个的PHP页面:
header("Content-type: text/html; charset=utf-8");$file = $_FILES["file"];if($file["error"]>0){ echo "错误:".$file["error"];}else{ $name = iconv(utf-8,gb2312,"upload/".$file["name"]); echo "文件名称:".$file["name"].""; echo "文件类型:".$file["type"].""; echo "文件大小:".($file["size"]/1024)."K"; echo "文件临时存储的位置:".$file["tmp_name"].""; //保存上传的文件 if(file_exists("upload".$file["name"])){ echo $file["name"]."文件已经存在"; }else{ //如果目录不存在则将该文件上传 if(move_uploaded_file($file[ mp_name],$name)){// move_uploaded_file($file[ mp_name],"upload/".$file["name"]); echo 文件上传成功!; echo 图片信息:; print_r($file); } }
运行:
完美
《PHP视频教学》