欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PHP如何操作JSON数据

程序员文章站 2022-02-11 06:30:48
...

JSON 是一个轻量级的文本数据交换格式,他比 XML 更小、更快,更易解析,所以在PHP开发过程中,我们经常会用它来传递数据,本文UncleToo将个大家介绍一下PHP如何医院*作JSON数据

PHP医院*作JSON数据一般在AJAX中用的比较多,可以将JSON格式的数据传给AJAX,也可以将AJAX返回的JSON数据解析成我们需要的字符串。在PHP中可以使用 json_decode() 函数来解析JSON格式数据,使用 json_encode() 函数将字符串(数组)生成JSON格式。

Php代码:

实例

<?php 
$json = '{"a":1, "b":2, "c":3, "d":4, "e":5 }'; 
var_dump(json_decode($json)); 
echo "<br/>"; 
var_dump(json_decode($json,true)); 
?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

输出: 

object(stdClass)#1 (5) { ["a"]=> int(1) ["b"]=> int(2) ["c"]=> int(3) ["d"]=> int(4) ["e"]=> int(5) }

array(5) { ["a"]=> int(1) ["b"]=> int(2) ["c"]=> int(3) ["d"]=> int(4) ["e"]=> int(5) }

<?php 
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); 
echo json_encode($arr); 
?>

输出:

{"a":1,"b":2,"c":3,"d":4,"e":5}

从前面的例子我们可以看到,用json_decode函数可以将JSON数据转换成数组,但是,如果JSON数据里又嵌套了JSON数据,那就不能直接这样写了,这里需要用自定义函数来实现将嵌套的JSON数据转换成数组。

<?php 
function json_to_array($web){ 
$arr=array(); 
foreach($web as $k=>$w){ 
    if(is_object($w)) $arr[$k]=json_to_array($w); //判断类型是不是object 
    else $arr[$k]=$w; 
} 
return $arr; 
} 
?>
<?php 
$s='{"webname":"UncleToo","url":"www.uncletoo.com","menu":{"PHP":"1","DataBase":"2","Web":"3"}}'; 
$web=json_decode($s); 
$arr=json_to_array($web); 
print_r($arr); 
?>

输出: 

Array ( [webname] => UncleToo [url] => www.uncletoo.com [menu] => Array ( [PHP] => 1 [DataBase] => 2 [Web] => 3 ) )

<a href="javascript:void(0);" onclick="alert('提交成功')"></a>

PHP如何操作JSON数据