PHP6 先修班 JSON实例代码

5年以前  |  阅读数:832 次  |  编程语言:PHP 

它是基於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">

Json�例 �原Json
"; }

}
?>

����的演�後 相信大家�JSON�玩意有更深一�的�解 �然JSON的�用不只是�例中那��� 有�趣一起研究吧
 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例