PHP返回JSON

最近自己做的WebApp想用php做后台,用json的方式返回数据。

开始的时候直接在后台使用

<?php
//...
echo '{"result":true,"info":""}'; 
?>

形式返回,前台Ajax制定返回数据类型为"json"。

发现这样根本不行,查了下资料。php返回json要有json_encode()

于是改成下面这样

<?php
//...
echo json_encode('{"result":true,"info":"..."}')
?>

这样子返回json确实没问题了,但是自有中文字符的时候会出现乱码,继续修改

<?php
//...
$arr='{"result":true,"info":"中文会乱码"}';
foreach($arr as $key=>$value ){
$arr[$key]=urlencode($value);
}
echo urldecode(json_encode($arr));
?>

这样返回的中文就不会乱码了(待续)

原文地址:https://www.cnblogs.com/ecosu/p/4665954.html