关于使用ThinkPHP从Mssql2005中查询中文乱码的处理

项目的各环节编码如下:

1.ThinkPHP默认为UTF-8

2.ThinkPHP的模板文件使用的编码UTF-8

3.数据库是简体中文版,存储的是GB2312编码

根据这些可以分析出乱码是因为编码不一致导致的。现在就是要将从数据库中取出的结果从GB2312转为UTF-8即可。

查询了TP的手册发现其有个内置的函数auto_charset。

在DbMssql类中的getAll方法中将代码:

 

  
  
  
  
  1. $result[]   =   $row

修改为:

 

  
  
  
  
  1. $result[] = auto_charset($row, gb2312, utf8) 

 

你可能感兴趣的:(sql,数据库,编码,乱码,thinkphp)