從5.2版本開始,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));
以上所述就是本文的全部內容了,希望大家能夠喜歡。