
json_en??code()和json_decode()函數,分別用于將PHP對象轉換為JSON字符串和將JSON字符串轉換為PHP對象。PHP中使用JSON
JSON(JavaScript Object Notatio(/ω\)n)是一種(zhong)輕量級的數據交換格式,易于閱讀和編寫(xiě),它基于JavaScript編程語(yǔ)言的一個(gè)子集(′ω`*),用于存儲和傳輸數據對象,JSON采用完全獨立于語(yǔ)言的文本格式,但同時(shí)也使??用了類(lèi)似于C語(yǔ)言家族的習慣(包括C、C++、C#、Java、JavaScript、Perl、Python等),這些特性使JSON成為理想的數據交換語(yǔ)言。
在PHP中,可以(yi)使用內置的json_encode()和json_decode()函數來(lái)處理JSON數據。
2.1 將數組轉換為JSON字符串
$array = array("name" => "張三", "age&qヾ(′?`)?uot; => 30, "city" => "北京");$json = json_encode??($array);echo $json; // 輸出:{ "name":ヽ(′ー`)ノ"張三","age":30,"city":"北京"}2.2 將J??SON字符串轉換為數組
$json = '{ "name":"張三","age&q(′?`*)uot;:30,"city":"北京"}';$array = json_decode($json, true);print_r($array); // 輸出:Array ( [name] => 張三 [age] => 30 [city] => 北京 )3. 相關(guān)問(wèn)題與解答
class Person { public $name; public $age; public $city; func??tion __construct($name, $age, $city) { $this>name = $name;?? $tヾ(?■_■)ノhis>age = $age; $this>city = $ci??ty; }}$person = new Person("張三", 30, "北京&( ?ω?)quot;);$array = get_object_vars($person);$json = json_encode($array);echo $js?on; // 輸出:{ "name":"張三","age":30,"city":"北京"}問(wèn)題2:如何在PHP中將一個(gè)JSON字符串轉換為對象?
答:可以使用json_de(′?`)code(?????)()函數將JSON字符串轉換為對象,需要設置第二個(gè)參數為(wei)true,以便將結果作為關(guān)聯(lián)數組返回,可以使用new???關(guān)鍵字創(chuàng )建一個(gè)新的類(lèi)實(shí)例,并使用關(guān)聯(lián)數組的(de)值初始化??對象的屬性。
$json = '{ "name":"張三","ヾ(^-^)ノ;age":30,"city":"北京"}';$a(′▽?zhuān)?rray = json_decode($json, true);$person = new Person($array['name'], $a(T_T)rray['age'], $array['city']);echo $person>name; // 輸出:張三