服务报价 | 域名主机 | 网络营销 | 软件工具| [加入收藏]
 热线电话: #
当前位置: 主页 > php教程 > php教程 >

BUG管理系统Mantis中文环境下CSV和Excel导出乱码问题

时间:2011-03-01 15:44来源:未知 作者:最模板 点击:
在安装MySql和Mantis时,如果所有编码都采用UTF8,并且在登入Mantis后将个人语言修改为简体中文后,然后查看问题,在做CSV和Excel导出时,可能你会发现导出文件内容显示为乱码。 1.解决

在安装MySql和Mantis时,如果所有编码都采用UTF8,并且在登入Mantis后将个人语言修改为简体中文后,然后查看问题,在做CSV和Excel导出时,可能你会发现导出文件内容显示为乱码。

    1.解决CVS导出乱码:

找到Mantis根目录下csv_export.php,进行修改:
添加函数:
function expChangeCode($str)
{
        return  mb_convert_encoding($str,"CP936","UTF-8");
}

然后修改:
将echo $t_header 改成 echo expChangeCode($t_header);
将echo  $t_value 改成 echo expChangeCode($t_value);
将echo $t_function( $t_row[ $t_column ] )改成 echo expChangeCode($t_function( $t_row[ $t_column ] ));

    2.解决Excel导出乱码

找到Mantis根目录下core/excel_api.php,进行修改:
将$t_ret .= utf8_encode( $t_value );改成$t_ret .=  $t_value;

也就是将utf8_encode函数去掉,也可以这样改:
将$t_value = str_replace( ">", ">", $t_value );改为$t_ret = str_replace( ">", ">", $t_value );
然后将$t_ret .= utf8_encode( $t_value );这句删除或者注释掉。

(责任编辑:最模板)
顶一下
(3)
60%
踩一下
(2)
40%
------分隔线----------------------------
栏目列表
热点内容