| 
 | 
 
 
                      今天遇到一个无法获得中文名称的问题,想到半天在前面取值输出都是正确到,唯独到后面就出问题了. 
[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); 
 }  
 |   
 
 
 
 |