如何实现PHP变量与JSON格式数据的互相转换?

更新于
2026-09-27 17:19:37
1阅读来源:SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计578个文字,预计阅读时间需要3分钟。

如何实现PHP变量与JSON格式数据的互相转换?

上篇文章我们介绍了《掌握PHP中的array数组(附代码解析)》,本文我们来介绍json,json是一种轻量级的数据交换格式,已经被绝大多数语言广泛使用,在PHP中与前端进行数据交换方便快捷。

上篇文章我们介绍了《掌握PHP中的array数组(附代码解析)》,本篇文章我们来介绍json,json是一种轻量级的数据交换格式,已经被绝大数语言广泛使用,在php中与前端进行数据交换便使用json格式的数据,那么如何在php中将变量与json格式相互转换,本文就带大家一起来看一看。在php中使用json需要用到两个函数json_encode、json_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:由以下常量组成的二进制掩码

    如何实现PHP变量与JSON格式数据的互相转换?

  • 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) }

本文共计578个文字,预计阅读时间需要3分钟。

如何实现PHP变量与JSON格式数据的互相转换?

上篇文章我们介绍了《掌握PHP中的array数组(附代码解析)》,本文我们来介绍json,json是一种轻量级的数据交换格式,已经被绝大多数语言广泛使用,在PHP中与前端进行数据交换方便快捷。

上篇文章我们介绍了《掌握PHP中的array数组(附代码解析)》,本篇文章我们来介绍json,json是一种轻量级的数据交换格式,已经被绝大数语言广泛使用,在php中与前端进行数据交换便使用json格式的数据,那么如何在php中将变量与json格式相互转换,本文就带大家一起来看一看。在php中使用json需要用到两个函数json_encode、json_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:由以下常量组成的二进制掩码

    如何实现PHP变量与JSON格式数据的互相转换?

  • 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) }