JSON编码简介
来源:互联网 发布:2016qq邮件钓鱼源码 编辑:程序博客网 时间:2024/05/20 02:27
JSON (JavaScript Object Notation),一种XML的减肥方法,用于在网络两端完成对象的序列化和反序列化过程。
JSON的实现比较多,包括有C, C++, C#, Java, JavaScript, Perl, Python等。JSON下载地址为:
http://www.JSON.org
这里选择的是客户端JAVASCRIPT和服务器端PHP的JSON实现(JSON.php,v 1.16)
使用JSON的客户端JAVASCRIPT脚本
1,包含JSON脚本
<script type="text/javascript" src="json.js"></script>
2,使用JSON解码(parse)
var sJSON = "{/"availableColors/" : [ /"red/", /"white/", /"blue/" ],/"availableDoors/" : [ 2, 4 ]}"
var oCarInfo = JSON.parse(sJSON);
alert(oCarInfo.availableColors[0]); //outputs "red"
alert(oCarInfo.availableDoors[1]); //ouputs "4"
3,使用JSON编码(stringify)
var oCar = new Object();
oCar.doors = 4;
oCar.color = "blue";
oCar.year = 1995;
oCar.drivers = new Array("Penny", "Dan", "Kris");
alert(JSON.stringify(oCar));
4, 使用zXML中的XMLHTTP发送
var oXmlHttp = zXmlHttp.createRequest();
oXmlHttp.open("post", "UpdateSudokuData.php", true);
//oXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
oXmlHttp.onreadystatechange = function ()
{
if (oXmlHttp.readyState == 4)
{
if (oXmlHttp.status == 200)
{
alert(oXmlHttp.responseText);
}
else
{
alert("An error occurred: " + oXmlHttp.statusText);
}
}
};
oXmlHttp.send(JSON.stringify(oStatus));
使用JSON的服务端PHP脚本
1,使用JSON的PHP脚本
require_once("JSON.php");
2,使用JSON解码(decode)
$oJSON = new JSON();
$sJSONText = " {/"age/":26,/"hairColor/":/"brown/",/"name/":/"Mike/",/"siblingNames/":[/"Matt/",/"Tammy/"]}";
$oPerson = $oJSON->decode($sJSONText);
print("<h3>Person Information</h3>");
print("<p>Name: ".$oPerson->name."<br />");
print("Age: ".$oPerson->age."<br />");
print("Hair Color: ".$oPerson->hairColor."<br />");
print("Sibling Names:</p><ul>");
for ($i=0; $i < count($oPerson->siblingNames); $i++)
{
print("<li>".$oPerson->siblingNames[$i]."</li>");
}
print("</ul>");
3,使用JSON编码(encode)
class Person
{
var $age;
var $hairColor;
var $name;
var $siblingNames;
function Person($name, $age, $hairColor)
{
$this->name = $name;
$this->age = $age;
$this->hairColor = $hairColor;
$this->siblingNames = array();
}
}
$oJSON = new JSON();
$oPerson = new Person("Mike", 26, "brown");
$oPerson->siblingNames[0] = "Matt";
$oPerson->siblingNames[1] = "Tammy";
$sOutput = $oJSON->encode($oPerson);
print($sOutput);
4, 使用XMLHTTP接收
// 如果通过HTTP接收,则需要使用HTTP_RAW_POST_DATA方式,相应的发送方也不要设置发送的Content-Type
$oJSON = new JSON();
$oStatus = $oJSON->decode($HTTP_RAW_POST_DATA);
$sStatus = "id=".$oStatus->sId." row=".$oStatus->row." col=".$oStatus->col." value=".$oStatus->value;
echo $sStatus;
- JSON编码简介
- 编码简介
- 编码简介
- 编码简介
- JSON 简介
- JSON 简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- JSON简介
- 在resin中使用struts时出问题的解决办法
- 快速清空sql数据库恢复到初始状态
- 使用Reactor框架的简单udp服务器
- ERP软件的五个档次
- 在Fedora Core 5上体验 Aiglx 、Xgl 和 Compiz
- JSON编码简介
- 软件项目规模估计方法介绍
- 约瑟夫环的数学解法
- 浅析小流域综合治理评价指标体系和评价方法
- 网络编程之路
- OpenDocument文件格式简介
- 如何用asp读取Excel文件
- [CSS代码]Div+Css(+Js)菜单代码及制作工具
- Linux程序设计入门--进程介绍