首页 >后端开发 >PHP问题 >php怎么将数据转化为json格式

php怎么将数据转化为json格式

青灯夜游
青灯夜游原创
2022-04-24 17:22:104928浏览

在php中,可以使用json_encode()函数将数据转化为json格式,该函数能对PHP变量进行JSON编码,返回JSON格式数据,语法“json_encode($value[,$options])”;如果转化失败,则会返回FALSE。

php怎么将数据转化为json格式

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

在php中,可以使用json_encode()函数将数据转化为json格式。

json_encode()函数可以对PHP变量进行JSON编码,返回JSON格式数据;如果转化失败,则会返回FALSE。

该函数接受一个必需参数和一个可选参数:

json_encode ( $value [, $options = 0 ] )

参数

  • value: 要编码的值。该函数只对 UTF-8 编码的数据有效。

  • options:由以下常量组成的二进制掩码:JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK,JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT

说明:

  • 返回字符串类型,包含了 value 值 JSON 形式的表示。

  • 编码受传入的 options 参数影响,此外浮点值的编码依赖于 serialize_precision。

示例1:将数组转化为json格式

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr = array (&#39;a&#39;=>1,&#39;b&#39;=>2,&#39;c&#39;=>3,&#39;d&#39;=>4,&#39;e&#39;=>5);
echo json_encode($arr);
var_dump(json_encode($arr));
?>

1.png

示例2:将 PHP 对象转换为 JSON 格式数据

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
class Emp {
    public $name = "";
    public $hobbies  = "";
    public $birthdate = "";
}
$e = new Emp();
$e->name = "sachin";
$e->hobbies  = "sports";
$e->birthdate = date(&#39;m/d/Y h:i:s a&#39;, strtotime("8/5/1974 12:20:03"));
echo json_encode($e);
?>

2.png

示例3: json_encode() 函数中 options 参数的用法

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$a = array(&#39;<foo>&#39;,"&#39;bar&#39;",&#39;"baz"&#39;,&#39;&blong&&#39;, "\xc3\xa9");

echo "Normal: ",  json_encode($a), "<br>";
echo "Tags: ",    json_encode($a, JSON_HEX_TAG), "<br>";
echo "Apos: ",    json_encode($a, JSON_HEX_APOS), "<br>";
echo "Quot: ",    json_encode($a, JSON_HEX_QUOT), "<br>";
echo "Amp: ",     json_encode($a, JSON_HEX_AMP), "<br>";
echo "Unicode: ", json_encode($a, JSON_UNESCAPED_UNICODE), "<br>";
echo "All: ",     json_encode($a, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE), "<br><br>";

$b = array();

echo "Empty array output as array: ", json_encode($b), "<br>";
echo "Empty array output as object: ", json_encode($b, JSON_FORCE_OBJECT), "<br><br>";

$c = array(array(1,2,3));

echo "Non-associative array output as array: ", json_encode($c), "<br>";
echo "Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT), "<br><br>";

$d = array(&#39;foo&#39; => &#39;bar&#39;, &#39;baz&#39; => &#39;long&#39;);

echo "Associative array always output as object: ", json_encode($d), "<br>";
echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "<br><br>";
?>

3.png

推荐学习:《PHP视频教程

以上是php怎么将数据转化为json格式的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn