实现上可能是这样的。原因使他们对默认输出流的编码方式不一样。
你线看看pho默认的输出编码类型,
然后在JS的输出流上使用相同的编码控制类型。
你也可以让他们都使用相同的编码类型。
大哥 都给力了 就采纳吧 求经验升级啊TT
js中文转码默认是用urlencode,而php默认的是rawurlencode(),所以编码出来就不一样。
PHP中对于URL进行编码,可以使用 urlencode() 或者 rawurlencode(),二者的区别是前者(urlencode)把空格编码为 '+',而后者(rawurlencode)把空格编码为 '%20',不过应该注意的是,在编码时应该只对部分URL编码,否则URL中的冒号和反斜杠也会被转义。
在解码时,可以使用相应的 urldecode() 和 rawurldecode(),相应地,rawurldecode() 不会把加号('+')解码为空格,而 urldecode() 会。
语法:urlencode($str) rawurlencode($str) urldecode($str) rawurldecode($str)
GBK与UTF-8的转码:
iconv("gbk","utf-8","php中文转码");//把中文gbk编码转为utf8
iconv("utf-8","gbk","php中文转码");//把中文utf8编码转为gbk