很多站长朋友们都不太清楚php显示json,今天小编就来给大家整理php显示json,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 Php输出json 2、 如何使用php解析json数组并显示? 3、 php查询数据库数据并json显示 4、 php 输出json及显示json中的中文汉字详解及实例 5、 PHP 输出json Php输出jsonphp直接输出json格式,有一个误区,以为用echo json_encode($data);这样就是输出json数据了,没错这样输出文本是json格式文本而不是json数据,正确的写法是应该加一句:
<?php
header('Content-type:text/json');
//这句是重点,它告诉接收数据的对象此页面输出的是json数据;
$json={"name":"yovae","password":"12345"};
//虽然这行数据形式上是json格式,如果没有上面那句的话,它是不会被当做json格式的数据被处理的;
echo $json;
?>
如何使用php解析json数组并显示?$jsonStr = '[{"text":"感觉Onedrive图片加载的速度特别慢","created":"Sat Nov 07 20:47:13 +0000 2015","favorite_count":0,"retweet_count":0,"url":"","media_url":""}]';
$arr = json_decode($jsonStr, true);
$text = $arr['text'];
$created = $arr['created'];
// 或者
$arr = json_decode($jsonStr);
$text = $arr->text;
$created = $arr->created;
php查询数据库数据并json显示header("Content-type:text/html;charset=utf-8");
mysql_connect('主机名','账号','密码');
mysql_select_db('数据库名');
mysql_query('set names utf8');
$sql="SELECT username,regdate FROM 表名 where username='".$_GET['USERNAME']."'";
$res=mysql_query($sql);
if($row = mysql_fetch_row($res)){
$json = array(
'state'=>true,
'username'=>$row[0],
'regdate'=>$row[1],
'rand_num'=>date('Y/m/d H:i:s')
);
}else{
$json = array(
'state'=>false,
'rand_num'=>date('Y/m/d H:i:s')
);
}
echo json_encode($json);
exit();
明白的人应该一眼就能看懂吧
php 输出json及显示json中的中文汉字详解及实例php
输出json及显示json中的中文汉字
在php中,我们经常需要将数组输出json,只需要使用json_encode函数处理一下数组即可,但有的时候数组里面有中文,使用json_encode函数处理后中文字符被编码成了Unicode,如何才能在json中显示中文呢?请看下文。
首先介绍一下php输出json格式:
一种最简单的用法,就是把数组直接输出为json,如下:
<?php
$arr
=
array('p1'=>'ni"hao','p2'=>2,'ch'=>'码农你好!');
$json
=
json_encode($arr);
echo
$json;
?>
输出的结果为:
{"p1":"ni\"hao","p2":2,"ch":"\u7801\u519c\u4f60\u597d\uff01"}
这里要注意:
双引号在json中会被自动编码为\",这个很好理解,js中字符串中是不允许出来单引号、双引号和反斜杠的。
中文字符被编码成了Unicode
如果是写接口,那直接这样输出就够了,中文无需去做处理。等到了客户端,再去把Unicode的中文转成汉字即可。但如果要在服务器端直接输出汉字出来,那我们可以做如下处理。
<?php
$arr
=
array('p1'=>'nihao','p2'=>2,'ch'=>'码农你好!');
$json
=
json_encode($arr);
echo
decodeUnicode($json);
function
decodeUnicode($str){
return
preg_replace_callback('/\\\\u([0-9a-f]{4})/i',
create_function(
'$matches',
'return
mb_convert_encoding(pack("H*",
$matches[1]),
"UTF-8",
"UCS-2BE");'
),
$str);
}
?>
输出:
{"p1":"ni\"hao","p2":2,"ch":"码农你好!"}
这个操作很简单,其实就是把输出结果匹配一下,把Unicode还原成了汉字。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
PHP 输出json<?php
$Json = '[
"ActionScript",
"AppleScript",
"Asp",
"Python",
"Scheme"
]';
$Arr = json_decode( $Json, true);
echo $Arr[0]; //输出ActionScript, 其他几个同理
关于php显示json的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php显示json php显示客户端ip和服务器ip的详细内容...