php json 输出中文乱码的问题怎么处理啊,谢谢

输出后中文\u6ec7\u6c60\u5乱码,{"allcount":"107","listurl":"house","project":[{"projcode":"34... 输出后中文\u6ec7\u6c60\u5乱码,{"allcount":"107","listurl":"house","project":[{"projcode":"3410877100","projname":"\u6ec7\u6c60\u5}]} 展开
 我来答
我是php工程师
2012-12-18 · TA获得超过149个赞
知道小有建树答主
回答量:354
采纳率:0%
帮助的人:200万
展开全部

header("Content-Type:text/html;charset=UTF-8");

$arr=array('1','2','三');

echo $arr['2']."<br />";

print_r($arr);

echo "<br />";

print_r(json_encode($arr)); 

echo "<br />";

print_r(json_decode(json_encode($arr)));

   

输出json数据会有 但是 翻译成数组后就行了

【血衣亭】206a6f
2012-12-17 · TA获得超过885个赞
知道小有建树答主
回答量:474
采纳率:50%
帮助的人:342万
展开全部
你这串数据原本的php变量应该是一个三维数组的。
如果你的网页编码是utf-8的话,应该可以解决,如果不是,那我就不知道了,
给你个提示,
<?php
$test0=array();
$test0['1']='我你他';
$test0['2']="test";
//将数组遍历,每个变量进行编码
foreach($test0 as $key=>$val){
$test[$key]=urlencode($val);
}

//json化
$test2=json_encode($test);
//变回来,就不会乱码了
$test3=urldecode($test2);
echo $test3;
?>
这样的转化后的json格式个字符串就不会乱码了,不过我这个是一维数组,遍历循环比较简单,你那个json格式的变量应该是一个三维数组(我猜的)。之后靠你自己了,至于上面为什么这么做,网上很多的!希望能帮到你!
更多追问追答
追问
$a = '{"allcount":"107","listurl":"house","project":[{ "projcode":"3410877100", "projname":"eeee", "housecount":"撒大师的"}]}';
$array = json_decode(urlencode($a),1) ;
$rrt=urldecode($array );
echo $array;
那这段代码中文怎么处理啊
追答
撒大师的 这不是没乱码吗,你直接转化就可以变成数组了,
$a=json_decode($a,true);
var_dump($a);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miniappGi2bWdIBydIJG
2012-12-17 · TA获得超过108个赞
知道小有建树答主
回答量:198
采纳率:0%
帮助的人:162万
展开全部
这是JSON字符串,里面不能有中文的,这乱码是正常的
追问
中文怎么处理啊
追答
不需要处理,把这个json串 json_decode 一下中文就正常了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天米粉I
2012-12-29
知道答主
回答量:32
采纳率:0%
帮助的人:19.5万
展开全部
json_decode()就好了,json后的中文本身就是乱码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Tomamsi
2021-11-30
知道答主
回答量:11
采纳率:0%
帮助的人:4716
展开全部
是想要这种效果吗?
echo json_encode($array,JSON_UNESCAPED_UNICODE);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式