时时商务社区

标题: 解决linux系统下获取中文名称的问题 [打印本页]

作者: wx_pylelnL4    时间: 2018-2-18 04:49

                      今天遇到一个无法获得中文名称的问题,想到半天在前面取值输出都是正确到,唯独到后面就出问题了.
[color=]header("Content-type: application/octet-stream");
    函数后乱码,取不到中文名字,几乎想尽了所有办法..后来请教了个高人,给解答了.
    解决方法如下:
    引入 iconv() 函数,确保读取文件不是乱码
$fn_old = $_GET['fname'];
$fn = iconv('UTF-8', 'GB2312', $fn_old);
    返回路径中的文件名部分
[color=]$filename = sbasename($fn);
    正则替换文件名中的斜线
function sbasename($filename) {
    return preg_replace('/^.+[\\\\\\/]/', '', $filename);
}





欢迎光临 时时商务社区 (http://bbs.4435.cn/) Powered by Discuz! X3.2