当前位置 : 主页 > 网络编程 > PHP >

php变量与json格式数据相互转换

来源:互联网 收集:自由互联 发布时间:2021-08-08
上篇文章我们介绍了《掌握PHP中的array数组(附代码解析)》,本篇文章我们来介绍 json , json 是一种轻量级的数据交换格式,已经被绝大数语言广泛使用,在 php 中与前端进行数据交换便使
上篇文章我们介绍了《掌握PHP中的array数组(附代码解析)》,本篇文章我们来介绍jsonjson是一种轻量级的数据交换格式,已经被绝大数语言广泛使用,在php中与前端进行数据交换便使用json格式的数据,那么如何在php中将变量与json格式相互转换,本文就带大家一起来看一看。在php中使用json需要用到两个函数json_encodejson_decode。

1.json_decode

json_decode    ( string $json   , bool $assoc = false   , int $depth = 512   , int $options = 0   )
  • $json:待解码的 json string 格式的字符串。这个函数仅能处理 UTF-8 编码的数据。

  • assoc:当该参数为 true 时,将返回 array 而非 object 。

  • depth:指定递归深度。

  • options:由常量组成的掩码。

  • 返回值:通过恰当的 PHP 类型返回在 json中编码的数据。

2.json_encode

json_encode    ( mixed $value   , int $options = 0   , int $depth = 512   )
  • value:待编码的 value ,除了 资源(resource)类型之外,可以为任何数据类型。所有字符串数据的编码必须是 UTF-8。

  • options:由以下常量组成的二进制掩码

  • depth:设置最大深度。 必须大于0。

  • 返回值:成功则返回 JSON 编码的 string 或者在失败时返回 false 。

代码实例:

<?php
$arr = array ('a'=>"sdf",'b'=>2,'c'=>"dfasd",'d'=>4,'e'=>5);

echo json_encode($arr);

echo "<br>";
$js=json_encode($arr);
var_dump(json_decode($js));
?>
输出:
{"a":"sdf","b":2,"c":"dfasd","d":4,"e":5}
object(stdClass)#1 (5) { ["a"]=> string(3) "sdf" ["b"]=> int(2) ["c"]=> string(5) "dfasd" ["d"]=> int(4) ["e"]=> int(5) }

网友评论