Home  >  Article  >  Backend Development  >  浅析php中json_encode()和json_decode()

浅析php中json_encode()和json_decode()

PHPz
PHPzforward
2016-06-13 10:29:391109browse

从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。下面我们来分析下这2个函数

json_encode()                                                                      

该函数主要用来将数组和对象,转换为json格式。

代码如下:

$arr = array ('a'=>'a','b'=>'b','c'='c','d'=>'d','e'='e');
echo json_encode($arr);

输出结果:

浅析php中json_encode()和json_decode()

json只接受utf-8编码的字符,json_encode()的参数必须是utf-8编码。

代码如下:

class person
{
    public $name;
    public $age;
    public $height;
    function __construct($name,$age,$height)
    {
        $this->name = $name;
        $this->age = $age;
        $this->height = $height;    
    }   
}
$obj = new person("zhangsan",20,100);
$foo_json = json_encode($obj);
echo $foo_json;

输出结果:

浅析php中json_encode()和json_decode()

当类中的属性为私有变量的时候,则不会输出。

json_decode()                                                                      

该函数用于将json文本转换为相应的PHP数据结构。

代码如下:

$json = '{"a":"hello","b":"world","c":"zhangsan","d":20,"e":170}';
var_dump(json_decode($json));

输出结果:

浅析php中json_encode()和json_decode()

通常情况下,json_decode()总是返回一个PHP对象。

转成数组的:

代码如下:

$json = '{"a":"hello","b":"world","c":"zhangsan","d":20,"e":170}';
var_dump(json_decode($json,ture));

浅析php中json_encode()和json_decode()

更多相关教程请访问 php编程从入门到精通全套视频教程

Statement:
This article is reproduced at:jb51.net. If there is any infringement, please contact admin@php.cn delete

Related articles

See more