它是基於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
��上一篇��介�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">
}
?>