PHP JSON
bab ini kita akan memperkenalkan bagaimana menggunakan bahasa PHP untuk encode dan decode objek JSON.
lingkungan Konfigurasi
Dalam php5.2.0 dan di atas telah membangun ekstensi JSON.
Fungsi JSON
fungsi | deskripsi |
---|---|
json_encode | Variabel dikodekan dalam JSON |
json_decode | String JSON Format decoding, dikonversi ke variabel PHP |
json_last_error | Pengembalian terjadi kesalahan terakhir |
json_encode
PHP json_encode () untuk variabel JSON-encoded, fungsi mengembalikan data JSON jika dijalankan dengan sukses, jika tidak maka kembali palsu.
tatabahasa
string json_encode ( $value [, $options = 0 ] )
parameter
- Nilai: nilai yang akan dikodekan.Fungsi ini hanya berlaku untuk data UTF-8 dikodekan.
- Pilihan: terdiri dari konstanta berikut biner mask: JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS , JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT
contoh
Contoh berikut menunjukkan bagaimana array PHP menjadi data JSON diformat:
<?php $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); echo json_encode($arr); ?>
Kode di atas dijalankan sebagai akibat dari:
{"a":1,"b":2,"c":3,"d":4,"e":5}
Contoh berikut menunjukkan bagaimana PHP objek menjadi data JSON diformat:
<?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); ?>
Kode di atas dijalankan sebagai akibat dari:
{"name":"sachin","hobbies":"sports","birthdate":"08\/05\/1974 12:20:03 pm"}
json_decode
PHP json_decode () adalah fungsi yang digunakan untuk memformat JSON string diterjemahkan dan diubah menjadi variabel PHP.
tatabahasa
mixed json_decode ($json [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
parameter
json_string: harus diterjemahkan JSON string harus Data UTF-8
Assoc: Ketika parameter ini TRUE, ia mengembalikan sebuah array, mengembalikan objek SALAH.
kedalaman: nilai integer yang menentukan kedalaman rekursi
Pilihan: masker biner, saat ini hanya mendukung JSON_BIGINT_AS_STRING.
contoh
Contoh berikut menunjukkan bagaimana untuk memecahkan kode 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)); ?>
Kode di atas dijalankan sebagai akibat dari:
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) }