首页  RSS订阅  繁體中文登录  注册  用户中心

您的位置:PHP教程

  • PHP教程
  • 解决linux系统下获取中文名称的问题(2013-05-18)

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

    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);
     } 

    上一篇:一个php的分页类(含调用方法)
    下一篇:分析那些百度长期不收录的黑名单页面