PHP JSON
Dalam bab ini kami akan memperkenalkan cara menggunakan bahasa PHP untuk mengekod dan menyahkod objek JSON.
Konfigurasi persekitaran
Pelanjutan JSON telah terbina dalam dalam php5.2.0 dan ke atas.
Fungsi JSON
函数 | 描述 |
---|---|
json_encode | 对变量进行 JSON 编码 |
json_decode | 对 JSON 格式的字符串进行解码,转换为 PHP 变量 |
json_last_error | 返回最后发生的错误 |
json_encode
PHP json_encode() digunakan untuk mengekod pembolehubah JSON Fungsi ini mengembalikan data JSON jika berjaya dilaksanakan. , jika tidak, kembalikan FALSE.
Sintaks
string json_encode ( $value [, $options = 0 ] )
Parameter
nilai: untuk dikodkan nilai. Fungsi ini hanya sah untuk data yang dikodkan UTF-8.
pilihan: Topeng binari yang terdiri daripada pemalar berikut: JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_HEX_PRETTY_CHECK, JSON_HEX_QUOT BJEK
Contoh
Contoh berikut menunjukkan cara menukar tatasusunan PHP kepada data format JSON:
<?php $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); echo json_encode($arr); ?>Hasil pelaksanaan kod di atas ialah:
{"a":1,"b":2,"c":3,"d":4,"e":5}Contoh berikut menunjukkan cara menukar objek PHP ke dalam data format JSON:
<?php class Emp { public $name = ""; public $hobbies = ""; public $birthdate = ""; } $e = new Emp(); $e->name = "sachin"; $e->hobbies = "sports"; $e->birthdate = date('m/d/Y h:i:s a', "8/5/1974 12:20:03 p"); $e->birthdate = date('m/d/Y h:i:s a', strtotime("8/5/1974 12:20:03")); echo json_encode($e); ?>Hasil pelaksanaan kod di atas ialah:
{"name":"sachin","hobbies":"sports","birthdate":"08\/05\/1974 12:20:03 pm"}
json_decode
Fungsi json_decode() PHP digunakan untuk menyahkod rentetan format JSON dan menukarnya kepada pembolehubah PHP.
Sintaks
mixed json_decode ($json [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
Parameter
json_string: untuk dinyahkod Rentetan JSON, mestilah data berkod UTF-8
assoc: Apabila parameter ini TRUE, tatasusunan akan dikembalikan dan apabila FALSE, objek akan dikembalikan.
kedalaman: parameter jenis integer, yang menentukan kedalaman rekursi
pilihan: Topeng binari, pada masa ini hanya JSON_BIGINT_AS_STRING disokong.
Contoh
Contoh berikut menunjukkan cara menyahkod data JSON:
<?php $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json)); var_dump(json_decode($json, true)); ?>Hasil daripada melaksanakan kod di atas ialah:
object(stdClass)#1 (5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) } array(5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) }