Các hàm PHP JSON
Giới thiệu PHP JSON
Phần mở rộng JSON triển khai định dạng trao đổi dữ liệu JavaScript Object Notation.
Trong PHP 5, việc giải mã được xử lý bởi trình phân tích cú pháp dựa trên JSON_checker của Douglas Crockford.
PHP 7 có một trình phân tích cú pháp mới và cải tiến được viết riêng cho PHP và được cấp phép theo giấy phép PHP.
Cài đặt
Từ PHP 5.2.0, các hàm JSON được bật theo mặc định. Không cần cài đặt để sử dụng các chức năng này.
Các hàm PHP JSON
Function | Description |
---|---|
json_decode() | Decodes a JSON string |
json_encode() | Encode a value to JSON format |
json_last_error() | Returns the last error occurred |
json_last_error_msg() | Returns the error string of the last json_encode() or json_decode() call |
Các hằng số JSON được xác định trước trong PHP
Constant | Type | Description |
---|---|---|
JSON_ERROR_NONE | Integer | No error has occurred |
JSON_ERROR_DEPTH | Integer | Maximum stack depth has been exceeded |
JSON_ERROR_STATE_MISMATCH | Integer | Invalid/Malformed JSON |
JSON_ERROR_CTRL_CHAR | Integer | Control character error |
JSON_ERROR_SYNTAX | Integer | Syntax error |
JSON_ERROR_UTF8 | Integer | Malformed UTF-8 characters. PHP 5.3 |
JSON_ERROR_RECURSION | Integer | Invalid recursive reference values. PHP 5.5 |
JSON_ERROR_INF_OR_NAN | Integer | Invalid NAN or INF values. PHP 5.5 |
JSON_ERROR_UNSUPPORTED_TYPE | Integer | Invalid type. PHP 5.5 |
JSON_ERROR_INVALID_PROPERTY_NAME | Integer | Invalid property name. PHP 7.0 |
JSON_ERROR_UTF16 | Integer | Malformed UTF-16 characters. 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 |