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)); ?>
这样返回的中文就不会乱码了(待续)