json数据在传输过程中,是以文本也就是字符串的形式传递的,而在不同的编程语言中操作JSON数据的往往是JSON对象。JSON对象和JSON字符串之间的相互转换是关键。传递的Json字符串转换Json对象,以及Json对象转换Json字符串的方法有很多,不同的程序语言有不同的方法。下面给大家介绍一下php格式化转换JSON的方法

php JSON字符串对象互相转换主要是分别使用:json_decode() json_encode两个函数。

一、php JSON字符串转换为JSON对象

json_decode() 对 JSON 格式的字符串进行编码,转为一个php变量,注意当函数后面的参数设置为true时,转换后是返回 array 而非 object

JSON 格式的字符串

$json = '{"a":"php","b":"mysql","c":3}';

其中a为键,php为a的键值。

实例:

<?php   
$json = '{"a":"php","b":"mysql","c":3}';  
$json_Class=json_decode($json);   
$json_Array=json_decode($json, true);   
print_r($json_Class);   
print_r($json_Array);         
?>

程序输出:

stdClass Object (
[a] => php
[b] => mysql
[c] => 3 )
Array (
[a] => php
[b] => mysql
[c] => 3 )

在上面代码的前提下访问对象类型$json_Class的a的值

echo $json_Class->{'a'};

程序输出:php

访问数组类型$json_Array的a的值

echo $json_Array['a'];

程序输出:php

二、php JSON对象转换为JSON字符串

json_encode() 对变量进行JSON编码。执行成功返回JSON数据,否则返回FALSE。该函数只能接受 UTF-8 编码的数据。

$book = array('a'=>'kw360','b'=>'jisuanqi','c'=>'json','d'=>'javascript');
$json = json_encode($book);
echo $json;

相关连接:在线Json格式化工具在线Json压缩工具在线Json校验工具