php中如何使用json
一、json_encode() 对变量进行JSON编码
语法:
json_encode ( $value [, $options = 0 ] )
注意:
1、$value为要编码的值,且该函数只对UTF8编码的数据有效;
2、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;
3、第二个参数一般不需要;
4、json数据其实就是一个string,可以用var_dump()打印出来看数据类型;
5、执行成功返回JSON数据,否则返回FALSE。
eg:
//执行代码$Book = array('a'=> 'lzichun','b'=> 'nihao','c'=> 'wohenhao','d'=> 'ljlong'); $json = json_encode($book); echo $json; //打印出的结果{ "a":"lzichun","b":"nihao","c":"wohenhao","d":"ljlong"}
二、json_decode() 对JSON数据进行解码,转换为PHP变量
语法:
json_decode (json[,json [,json[,assoc = false [, $depth = 512 [, $options =0 ]]])
注意:
1、$ json 为待解码的数据,必须为utf8编码的数据;
2、$ assoc 值为TRUE时返回数组,FALSE时返回对象;
3、$ depth 为递归深度;
4、$option 二进制掩码,目前只支持 JSON_BigINT_AS_STRING;
5、一般只用前面两个参数,如果要数据类型的数据要加一个参数true。
eg:
//执行代码$book = array('a'=> 'xiyouji','b'=> 'sanguo','c'=> 'shuihu','d'=> 'hongloumeng'); $json = json_encode($book); $array = json_decode($json,TRUE); $obj = json_decode($json); VAR_dump($array); var_dump($obj); //打印出的结果array(4) { ["a"]=> string(7) "xiyouji" ["b"]=> string(6) "sanguo" ["c"]=> string(6) "shuihu" ["d"]=> string(11) "hongloumeng" } object(stdClass)#2 (4) { ["a"]=> string(7) "xiyouji" ["b"]=> string(6) "sanguo" ["c"]=> string(6) "shuihu" ["d"]=> string(11) "hongloumeng" }
两个结果看起来没多大区别,但调用里面的元素时,array和obj的方式是不同的。
//执行代码$book = array('a'=> 'xiyouji','b'=> 'sanguo','c'=> 'shuihu','d'=> 'hongloumeng'); $json = json_encode($book); $array = json_decode($json,TRUE); $obj = json_decode($json); var_dump($array['b']); //调用数组元素echo 'br/> '; var_dump($obj-> c); //调用对象元素//打印出的结果string(6) "sanguo"string(6) "shuihu"
本文转载自:https://blog.csdn.net/longgeaisisi/article/details/84665523
推荐学习:PHP视频教程
以上就是php中如何使用json_decode()和json_encode()?的详细内容,更多请关注其它相关文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: php中如何使用json
本文地址: https://pptw.com/jishu/596229.html