Sql server2008 编码为GBK,PHP设置为utf-8,网页端出现中文乱码,并且我在php端做了转码的在application.php,view实在AssetView.PHP,请问一下怎么改,连接数据库配置文件也检查了的,设置的为utf-8

解决方案 »

  1.   

    好好的 gbk,干嘛要 utf-8?自找麻烦如果说你的网页中需要 utf-8 的双字节字符或四字节字符(emoji表情符)
    那么 gbk 根本就没有对应的字符,使用 GBK 排序规则的 sql server2008 根本就是个错误
      

  2.   

    这个是之前的人搞的,问题是在sql server2008中也找不到utf-8,所以他们以为做了转码就行了,你的意思是不是就是说php不能和sql server2008搭配使用
      

  3.   

    我的意思是:既然你没有能力改变 sql server2008 的工作字符集(其实他是支持 utf-8 的)
    那就沿用 sql server2008 的 GBK
    何苦又去弄个 utf-8 呢?
      

  4.   

    有人说 utf-8 是为了国际化,那有多少西人识得方块字呢?
    既然网站是给国人看的,为何要国际化呢?
      

  5.   

    我没有 sql server2008,自然不能示范给你看
    不然你又要说 百度了很多都不行
      

  6.   

    php改用 GBK就可以了。
      

  7.   

    php端没法改了,出了改成GBK还有什么方法没有
      

  8.   

    我也遇到了这样的问题。目前思路有三个,
    一个是直接更改数据库编码格式为utf8。但是网络上并没有太多的资料可以解决这个问题。而且直接更改数据库如果不能恢复的话,麻烦也大了一点。
    一个是在网页上设置编码格式为gbk,但是我拿到的模板都是用的utf8格式,而从sqlserver中读取的数据都是gbk格式,所以存在兼容性的问题!
    还有一个是把读取出的数据全部装换为utf8格式。这种比较耗费性能。但是是最稳妥的办法。
      

  9.   

    header("content-type:text/html;charset=utf-8");
      

  10.   

    php 可以改用GBK的。
      

  11.   

    编码统一即可,建议使用GBK
      

  12.   

    取出来的数iconv转一下可行不?