Pengertian PHP JSON
Ekstensi JSON mengimplementasikan format pertukaran data Notasi Objek JavaScript.
Dalam PHP 5, decoding ditangani oleh parser berdasarkan JSON_checker oleh Douglas Crockford.
PHP 7 memiliki parser baru dan lebih baik yang secara khusus ditulis untuk PHP dan dilisensikan di bawah lisensi PHP.
Instalasi
Dari PHP 5.2.0, fungsi JSON diaktifkan secara default. Jadi , tidak diperlukan instalasi untuk menggunakan fungsi ini.
Fungsi PHP JSON
| Function | Deskripsi |
|---|---|
| json_decode() | Mendekode string JSON |
| json_encode() | Enkode nilai ke format JSON |
| json_last_error() | Mengembalikan kesalahan terakhir yang terjadi |
| json_last_error_msg() | Mengembalikan string kesalahan dari panggilan json_encode() atau json_decode() terakhir |
Konstanta JSON Standar PHP
| Konstanta | Tipe | Deskripsi |
|---|---|---|
| JSON_ERROR_NONE | Integer | Tidak ada kesalahan yang terjadi |
| JSON_ERROR_DEPTH | Integer | Kedalaman tumpukan maksimum telah terlampaui |
| JSON_ERROR_STATE_MISMATCH | Integer | JSON tidak valid / cacat |
| JSON_ERROR_CTRL_CHAR | Integer | Kesalahan karakter kontrol |
| JSON_ERROR_SYNTAX | Integer | Syntax error |
| JSON_ERROR_UTF8 | Integer | Karakter UTF-8 rusak. PHP 5.3 |
| JSON_ERROR_RECURSION | Integer | Nilai referensi rekursif tidak valid. PHP 5.5 |
| JSON_ERROR_INF_OR_NAN | Integer | Nilai NAN atau INF tidak valid. PHP 5.5 |
| JSON_ERROR_UNSUPPORTED_TYPE | Integer | Jenis tidak valid. PHP 5.5 |
| JSON_ERROR_INVALID_PROPERTY_NAME | Integer | Nama properti tidak valid. PHP 7.0 |
| JSON_ERROR_UTF16 | Integer | Karakter UTF-16 rusak. PHP 7.0 |
| JSON_BIGINT_AS_STRING | Integer | – |
| JSON_OBJECT_AS_ARRAY | Integer | – |
| JSON_HEX_TAG | Integer | – |
| JSON_HEX_AMP | Integer | – |
| JSON_HEX_APOS | Integer | – |
| JSON_HEX_QUOT | Integer | – |
| JSON_FORCE_OBJECT | Integer | – |
| JSON_NUMERIC_CHECK | Integer | – |
| JSON_PRETTY_PRINT | Integer | – |
| JSON_UNESCAPED_SLASHES | Integer | – |
| JSON_PARTIAL_OUTPUT_ON_ERROR | Integer | – |
| JSON_PRESERVE_ZERO_FRACTION | Integer | – |
| JSON_UNESCAPED_LINE_TERMINATORS | Integer | – |
| JSON_INVALID_UTF8_IGNORE | Integer | – |
| JSON_INVALID_UTF8_SUBSTITUTE | Integer | – |
| JSON_THROWN_ON_ERROR | Integer | – |