浅析php中json_encode()和json_decode()

json_encode()                                                                      


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




复制代码 代码如下:



$arr = array (‘a’=>’a’,’b’=>’b’,’c’=’c’,’d’=>’d’,’e’=’e’);


echo json_encode($arr);




输出结果:




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;



输出结果:




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


json_decode()                                                                      


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




复制代码 代码如下:



$json = ‘{“a”:”hello”,”b”:”world”,”c”:”zhangsan”,”d”:20,”e”:170}’;


var_dump(json_decode($json));




输出结果:




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


转成数组的:




复制代码 代码如下:



$json = ‘{“a”:”hello”,”b”:”world”,”c”:”zhangsan”,”d”:20,”e”:170}’;


var_dump(json_decode($json,ture));



SyntaxHighlighter.highlight();