PHP中使用JSON场景有哪些?如何使用?
Admin 2021-05-06 群英技术资讯 1354 次浏览
这篇文章主要给大家分享的是有关php实现 JSON 数据的编码和解码操作的内容。很多PHP新手对于在PHP中使用JSON不是很清楚,因此分享给大家做个参考,希望对大家学习有一定的帮助,感兴趣的朋友就继续往下看吧。
JSON 使用最频繁的两个操作就是编码和解析数据,PHP 官方提供了以下 2 个函数实现这两个操作:
编码用于将数据绑定到特定格式。需要此过程来保持数据一致性。解码是一个反向过程,它将编码的数据还原回其原始形式。
使用 json_encode 将 PHP 的一些数据类型转换为 JSON 格式,函数包含 3 个参数,分别为:
JSON_FORCE_OBJECT
JSON_HEX_QUOT
JSON_HEX_TAG
JSON_HEX_AMP
JSON_HEX_APOS
JSON_INVALID_UTF8_IGNORE
JSON_INVALID_UTF8_SUBSTITUTE
JSON_NUMERIC_CHECK
JSON_PARTIAL_OUTPUT_ON_ERROR
JSON_PRESERVE_ZERO_FRACTION
JSON_PRETTY_PRINT
JSON_UNESCAPED_LINE_TERMINATORS
JSON_UNESCAPED_SLASHES
JSON_UNESCAPED_UNICODE
JSON_THROW_ON_ERROR
<?php $input_array = array("zero","one","two"); //returns ["zero","one","two"] $str_json_format = json_encode($input_array); print "JSON Formatted String:" . $str_json_format; //returns {"0":"zero","1":"one","2":"two"} $obj_json_format = json_encode($input_array, JSON_FORCE_OBJECT); print "<br/><br/>JSON Object:" . $obj_json_format; //returns [ "zero", "one", "two" ] $strJsonFormat_with_space = json_encode($input_array, JSON_PRETTY_PRINT); print "<br/><br/>JSON Formatted String with white space:" . $strJsonFormat_with_space;
这是 JSON encode 的反向操作,用于将 JSON 编码的数据转换为最初编码的 PHP数据类型。json_decode 函数包含 4 个参数,分别为:
TRUE
时,将返回 array 而非 objectJSON_BIGINT_AS_STRING
, JSON_INVALID_UTF8_IGNORE
, JSON_INVALID_UTF8_SUBSTITUTE
, JSON_OBJECT_AS_ARRAY
, JSON_THROW_ON_ERROR
返回值:
返回值为 TRUE
, FALSE
和 NULL
。
如果 json
无法被解码, 或者编码数据深度超过了递归限制的话,将会返回NULL
<?php $str_json_array_decoded = json_decode($str_json_format); print "<br/><br/>Resultant decoded array from JSON array:<br/>"; print "<PRE>"; print_r($str_json_array_decoded); print "</PRE>"; $str_objJson_decoded = json_decode($obj_json_format); print "<br/><br/>Resultant decoded object data from JSON object:<br/>"; print "<PRE>"; print_r($str_objJson_decoded); print "</PRE>"; $str_jsonAry_decoded = json_decode($obj_json_format,true); print "<br/><br/>Resultant decoded array data from JSON object:<br/>"; print "<PRE>"; print_r($str_jsonAry_decoded); print "</PRE>";
stripslashes
对字符串进行处理后,再使用 json_decode 解析如果需要解码的 JSON 数据中包含有反斜杠 "\",应该使用如下代码进行解码:
$obj = \json_decode(stripslashes($json));
对php实现 JSON 数据的编码和解码操作的介绍就到这,希望对大家学习帮助,更多php中使用JSON的内容大家可以继续关注其他文章。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
你清楚关于PHP如何判断函数的有没有被定义的方法是什么吗?其实这个方法很简单。为了帮助大家解决问题,下面请看看爱站技术频道小编所整理的文章。
PHP支持一个错误控制运算符:@。当将其放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉。如果用 set_error_handler() 设定了自定义的错误处理函...
PHP如何读取大文件?下面本篇文章给大家介绍一下利用PHP读取大文件的方法,希望对大家有所帮助!
php中你大概有发现require_once()不好用,但是没有深究过它为什么不好用,这篇文章从该函数的定义和用法聊聊不好用的原因,文中讲述的非常详细,对大家的学习或工作具有一定的参考价值
在本篇文章里小编给大家整理的是一篇关于php去除deprecated的实例方法,有兴趣的朋友们可以跟着学习参考下。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008