JSON 主要利用了成�Φ� {} �戆�住各��object(物件),用成�Φ� [] �戆�各��array(�列),
用成�Φ� "" �戆�住各字串,用逗���^隔各��刀��Y料型�B有 string, number, array, object
下面��蔚�JSON格式,�⑹隽艘�� object json �碛幸��成�T���,�@��成�T��抵杏泻�有三��物件
复制内容到剪贴板代码:
var json = {
'query' : [
{'id':'1','type':'a','title':'PHP 5.2.0 的新功能 JSON decoder & encoder'},
{'id':'2','type':'b','title':'JSON 全�Q JavaScript Object Notation'},
{'array': ['A', 'B','C', 'D', 'E']}
]
};
如此,我��可以�@得一��叫做 json 的Object,而�@��json Object中包含一����立的成�T query
而query包含一��Array ,�@��Array中又含了三��Object,前面二��Object含有三��成�T
id,type,title,而最後一��Object array 包含一���列,如此解��明白吧?
但是要怎�N用呢?
很���
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 全�Q JavaScript Object Notation
alert('�列索引3='+json.query[2].array[3]);
//alert �列索引3=D
�@�硬僮髻Y料�r更�便,不需要和�}�s的DOM打交道,所需要的�Y料可以很�p�的取得
例如上面的例子 json.query[ i ].title 如此就可以取得第i�P的title�群�的值
PHP的�l展是很迅速,��程式界��JSON�一知半解�r或者全然不知何��JSON�r
PHP已�在最新的版本5.2.0中�{入核心,�K且�A�O��B是�⒂茫�相�^於其他的Script�Z言
PHP可�^一�R��先,在5.2.0版本中��JSON��作了���函�� json_decode() 和 json_encode()
前者是��JSON格式的字串�原成PHP原生的�列
後者�t是��PHP原生�列��g成JSON格式的字串
不�^,由於Javascript支援Unicode,如果在存取�Y料��r使用非Ascii的字元,如中、日、�n
需要�⒆衷���a�D�Q成UTF8,不然��^json_encode()後的字串��是�y�a
========================================================
��^上一篇��谓榻BJOSN後
本篇就���作如何使用JOSN
下面�例使用需要使用MySQL4.1以上版本
��a全程�裼�utf8
承接上一篇的�Y料格式,表中共有三���谖�id,type,title
�Y料表�格如下
复制内容到剪贴板代码:
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;
复制内容到剪贴板代码:
//建立�B�
$conn = mysqli_connect("localhost", 'root', '')or die('�B不上�Y料��');
//�x�褓Y料��
mysqli_select_db($conn,'mydata') or die('不能�x�Y料��');
//�O定�B���a��t,不懂上google找
mysqli_query($conn,'SET NAMES 'utf8'');
//取出�Y料
$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);
//�Y料表中只放三�P�Y料,所以在第三�P�r不需要在尾巴加上 ",",�得,最後一�P�Y料不用加上","
if ($i<3)
{
$json .= ",";
}
}
//�①Y料包�M�列中
$json = '{"query":[ '.$json.']}';?>
�原Json
//�⒆执�解�a
$s_JSON_Decoded = json_decode($json,true);
//取回�Y料
foreach ($s_JSON_Decoded as $row)
{
foreach ($row as $rowa)
{
echo $rowa['title']."
";
}
}
?>
��^��蔚难菥�後
相信大家��JSON�@玩意有更深一�拥牟t解
��然JSON的��用不只是�例中那�N���
有�d趣一起研究吧