PHP6 先修班 JSON实例代码

它是基於JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一子集
JSON 主要利用了成的 {} 包住各object(物件),用成的 [] 包各array(列),
用成的 "" 包住各字串,用逗隔各而料型有 string, number, array, object

下面的JSON格式,述了一 object json 有一成,成中有含有三物件

复制内容到剪贴板代码:
var json = {
'query' : [
{'id':'1','type':'a','title':'php 5.2.0 的新功能 JSON decoder & encoder'},
{'id':'2','type':'b','title':'JSON 全 JavaScript Object Notation'},
{'array': ['A', 'B','C', 'D', 'E']}
]
};
如此,我可以得一叫做 json 的Object,而json Object中包含一立的成 query
而query包含一Array ,Array中又含了三Object,前面二Object含有三成
id,type,title,而最後一Object array 包含一列,如此解明白吧?

但是要怎用呢?

alert('I have ' +json.query.length + ' object.');
//alert I have 3 object.
alert('type='+json.query[1].type+'/r/ntitle'+json.query[1].title);
//alert type=b title=JSON 全 JavaScript Object Notation
alert('列索引3='+json.query[2].array[3]);
//alert 列索引3=D

操作料更便,不需要和的DOM打交道,所需要的料可以很的取得
例如上面的例子 json.query[ i ].title 如此就可以取得第i的title含的值
php的展是很迅速,程式界JSON一知半解或者全然不知何JSON
php已在最新的版本5.2.0中入核心,且是用,相於其他的Script言
php可一先,在5.2.0版本中JSON作了函 json_decode() 和 json_encode()
前者是JSON格式的字串原成php原生的列
後者是php原生列成JSON格式的字串
不,由於Javascript支援Unicode,如果在存取料使用非Ascii的字元,如中、日、
需要字元成UTF8,不然json_encode()後的字串是
========================================================
上一篇介JOSN後
本篇就作如何使用JOSN
下面例使用需要使用MySQL4.1以上版本
全程用utf8
承接上一篇的料格式,表中共有三位id,type,title
料表格如下
复制内容到剪贴板代码:
CREATE TABLE `news` (
`id` int(10) unsigned NOT NULL auto_increment,
`type` varchar(255) NOT NULL default '',
`title` varchar(64) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
复制内容到剪贴板代码:
<?php
//建立
$conn = mysqli_connect("localhost", 'root', '')or die('不上料');
//料
mysqli_select_db($conn,'mydata') or die('不能料');
//定,不懂上google找
mysqli_query($conn,'SET NAMES 'utf8'');
//取出料
$results = mysqli_query($conn,'SELECT id,type,title FROM news');
//Josn字串
$json = '';
//因是例,所以自行控制圈
$i=0;
while($row = mysqli_fetch_assoc($results))
{
$i++;
$json .= json_encode($row);
//料表中只放三料,所以在第三不需要在尾巴加上 ",",得,最後一料不用加上","
if ($i<3)
{
$json .= ",";
}

}
//料包列中
$json = '{"query":[ '.$json.']}';?>
<!doctype html public "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" xml:lang="zh-tw" lang="zh-tw" >
<head>
<title>Json例</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />
<meta http-equiv="Cache-Control" content="no-cache" />
<meta name="generator" content="mamba" />
</head>
<body>
<script type="text/Javascript">
var json = <?php echo $json?>;
alert('I have ' +json.query.length + ' object.');
alert('type='+json.query[1].type+'rntitle'+json.query[1].title);
//上一篇介中使用
</script>
原Json<br>
<?php
//字串解
$s_JSON_Decoded = json_decode($json,true);
//取回料
foreach ($s_JSON_Decoded as $row)
{
foreach ($row as $rowa)
{
echo $rowa['title']."<br>";
}

}
?>
</body>
</html>
的演後
相信大家JSON玩意有更深一的解
然JSON的用不只是例中那
有趣一起研究吧

php技术PHP6 先修班 JSON实例代码,转载需保留来源!

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。