PHP创建和解析JSON数据的方法

JSON可以解释为“JavaScript的对象表示方法”,也就是说JSON的概念是来源于JavaScript的,对于WEB开发模式来说,下面这个图大家肯定很熟悉:

2012-8-18 225813

由此可以看到,客户端浏览器和服务器端脚本需要交换数据。对于小数据或无格式数据,直接用简单的POST和GET用字符串方法提交过去就可以,但是一些大型的数据,最好使用有格式的方法交换,比如JSON和XML。

JSON是什么?

JSON一种用于在互联网络中传输超量数据的数据交换格式。虽然在Internet中交换数据XML占主要地位,然而JSON却更加的简单并且适用于轻型的数据。

尽管JSON当初是被JavaScript发明并且用于访问远程数据的,它现在却被广泛适用于各种语言,因为JSON是一种于平台无关的数据格式。

JSON数据的数据类型和实例

JSON支持各种各样的数据类型,包括数字、字符串、布尔值、数组数据甚至对象数据(是一个集合,每个元素都是键:值对形式,使用逗号分隔,并且使用大括号包裹)。

让我们看一个JSON数据的简单例子,该例子表示一个雇员的详细信息:

{"id":"1","name":"mike","country":"usa","office":["microsoft","oracle"]}

使用PHP创建和解析JSON数据的方法

PHP从5.2.0版本以后提供了JSON扩展来处理JSON数据,通过PHP有两个函数json_encode()json_decode非常方便的对JSON数据进行转换和解析。

首先,让我们看一段PHP用数组创建如上各式的JSON的代码:

$json_data = array ('id'=>1,'name'=>"mike",'country'=>'usa',"office"=>array("microsoft","oracle"));
echo json_encode($json_data);

 

该代码直接产生了JSON数据。现在让我们用PHP将上面的JSON解码:

$json_string='{"id":1,"name":"mike","country":"usa","office":["microsoft","oracle"]} ';
$obj=json_decode($json_string);

 

现在变量$obj包含了使用PHP解析后的JSON数据,你可以使用以下的方法来输出和访问:

echo $obj->name; //displays mike
echo $obj->office[0]; //displays microsoft

 

你猜的没错$obj->office是一个数组,你能够使用PHP的foreach方法遍历它:

foreach($obj->office as $val)
    echo $val;

 

相关推荐

7 thoughts on “PHP创建和解析JSON数据的方法”

  1. JSON支持各种各样的数据类型,包括数字、字符串、布尔值、数组数据甚至对象数据(是一个集合,每个元素都是键:值对形式,使用逗号分隔,并且使用大括号包裹)。

    回复

回复 itfanr 取消回复