加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

解决linux系统下获取中文名称的难题

发布时间:2023-08-09 13:06:47 所属栏目:Linux 来源:
导读: 今天遇到一个无法获得中文名称的问题,想到半天在前面取值输出都是正确到,唯独到后面就出问题了.header("Content-type: application/octet-stream"); 函数后乱码,取不到中文名字,几乎想尽了所有办法..后来请教

 今天遇到一个无法获得中文名称的问题,想到半天在前面取值输出都是正确到,唯独到后面就出问题了.

header("Content-type: application/octet-stream");

   函数后乱码,取不到中文名字,几乎想尽了所有办法..后来请教了个高人,给解答了.

   解决方法如下:

   引入 iconv() 函数,确保读取文件不是乱码

$fn_old = $_GET['fname'];

$fn = iconv('UTF-8', 'GB2312', $fn_old);

   返回路径中的文件名部分

$filename = sbasename($fn); 

   正则替换文件名中的斜线

function sbasename($filename) {

    return preg_replace('/^.+[///////]/', '', $filename);

 } 

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章