php如何将数组转成JSON并保留key

后端开发   发布日期:2024年05月12日   浏览次数:307

本篇内容主要讲解“php如何将数组转成JSON并保留key”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何将数组转成JSON并保留key”吧!

方法一:使用json_encode()函数

json_encode()函数是PHP中将数组转换成JSON的主要函数。默认情况下,该函数会将数组中的key丢失,只保留value。但是,我们可以使用JSON_FORCE_OBJECT选项来强制将数组转换成object并保留key。

示例代码:

  1. //一个简单的关联数组
  2. $arr = array(
  3. "name" => "John",
  4. "age" => 30,
  5. "city" => "New York"
  6. );
  7. //将数组转换成JSON并强制转换成object
  8. $json = json_encode($arr, JSON_FORCE_OBJECT);
  9. //输出JSON字符串
  10. echo $json;

运行结果:

  1. {"name":"John","age":30,"city":"New York"}

可以看到,转换后的JSON字符串保留了数组中的key。

方法二:使用json_decode()函数

除了json_encode()函数,我们还可以使用json_decode()函数将JSON字符串转换回PHP数组,并保留原有的key。需要注意的是,json_decode()函数默认将JSON字符串转换成PHP对象,因此需要将第二个参数设置成true以将其转换成关联数组。

示例代码:

  1. //一个JSON字符串
  2. $json = '{"name":"John","age":30,"city":"New York"}';
  3. //将JSON字符串转换成数组并保留key
  4. $arr = json_decode($json, true);
  5. //输出数组
  6. print_r($arr);

运行结果:

  1. Array
  2. (
  3. [name] => John
  4. [age] => 30
  5. [city] => New York
  6. )

以上就是php如何将数组转成JSON并保留key的详细内容,更多关于php如何将数组转成JSON并保留key的资料请关注九品源码其它相关文章!