2015-05-09 58 views
0
$obj = [{"name":"Hình Ảnh","url":"images"}]; 
$str = json_encode($obj); 

结果:如何json_encode utf8?

[{"name":"H\u00ecnh \u1ea2nh","url":"hinh_anh"}] 

为什么?

为什么$str不就是:

[{"name":"Hình Ảnh","url":"images"}]; 
+0

因为这是怎么回事。有关非标准编码,请参阅JSON_UNESCAPED_UNICODE。 – mario

+0

解码回来,它又是一样的 – Rizier123

+0

当然解码它,但需要将字符串保存到json文件与file_put_contents。 –

回答

0

添加文件的代码

header('Content-type: text/html; charset=UTF-8') ; 

,改变

$str = json_encode($obj, JSON_UNESCAPED_UNICODE); 
+0

我看到了,我是这样做的,但是这个结果是:json_encode($ obj,JSON_UNESCAPED_UNICODE); ==> json_encode()期望参数2很长,字符串在 中给出注意: –