Mảng phân tích cú pháp php json

{"a":1,"b":2,"c":3,"d":4,"e":5}
0

{"a":1,"b":2,"c":3,"d":4,"e":5}
1

{"a":1,"b":2,"c":3,"d":4,"e":5}
2

{"a":1,"b":2,"c":3,"d":4,"e":5}
3

{"a":1,"b":2,"c":3,"d":4,"e":5}
4

{"a":1,"b":2,"c":3,"d":4,"e":5}
5

{"a":1,"b":2,"c":3,"d":4,"e":5}
6

{"a":1,"b":2,"c":3,"d":4,"e":5}
7

Ví dụ trên sẽ xuất ra

JSON là gì?

json_encode là gì? . Hàm số json_encode được viết như sau

Cách viết

string json_encode [ mixed $value [, int $options = 0 [, int $depth = 512 ]] ]

Tranh luận

  • Giá trị biến thứ nhất. encode value. Chỉ định chuỗi hoặc mảng để chuyển đổi sang định dạng JSONCó thể chỉ định giá trị tùy chọn khác với định dạng tài nguyên Tất cả dữ liệu ở dạng chuỗi phải mã hóa bằng UTF-8
  • Option thứ 2. Set the job will convert THEO ĐỊNH ĐỊNH NHƯ THẾ NÀO VÀ CÓ THỂ CHỈ ĐỊNH LÀ HẰNG SẮC BẰNG CÁC TÙY CHỌN. JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT, JSON_PRESERVE_ZERO_FRACTION, JSON_UNESCAPED_UNICODE, JSON_PARTIAL_OUTPUT_ON_ERROR
  • Độ sâu biến thứ 3. Chỉ định được độ sâu tối đa bằng số nguyên

Giá trị trả lại. Hàm json_encode trả về giá trị đã mã hóa JSON, trường hợp xử lý lỗi sẽ trả về FALSE

Lưu ý. Tất cả các chuỗi dữ liệu chuyển đổi phải được mã hóa thành mã hóa UTR-8

Cách sử dụng json_encode Sử dụng hàm json_encode để chuyển đổi chuỗi giá trị duy nhất thành định dạng JSON

chương trình mẫu

Ví dụ 1 json_encode[]


Kết quả đầu ra của ví dụ trên sẽ như sau

{"a":1,"b":2,"c":3,"d":4,"e":5}

Ví dụ 2 json_encode[] , ví dụ hiển thị một số tùy chọn đang sử dụng


Kết quả đầu ra của ví dụ trên sẽ như sau

Normal: ["","'bar'","\"baz\"","&blong&","\u00e9"]
Tags: ["\u003Cfoo\u003E","'bar'","\"baz\"","&blong&","\u00e9"]
Apos: ["","\u0027bar\u0027","\"baz\"","&blong&","\u00e9"]
Quot: ["","'bar'","\u0022baz\u0022","&blong&","\u00e9"]
Amp: ["","'bar'","\"baz\"","\u0026blong\u0026","\u00e9"]
Unicode: ["","'bar'","\"baz\"","&blong&","e"]
All: ["\u003Cfoo\u003E","\u0027bar\u0027","\u0022baz\u0022","\u0026blong\u0026","e"]

Empty array output as array: []
Empty array output as object: {}

Non-associative array output as array: [[1,2,3]]
Non-associative array output as object: {"0":{"0":1,"1":2,"2":3}}

Associative array always output as object: {"foo":"bar","baz":"long"}
Associative array always output as object: {"foo":"bar","baz":"long"}

Ví dụ 3 tùy chọn JSON_NUMERIC_CHECK


Kết quả đầu ra của ví dụ trên sẽ như sau

Strings representing numbers automatically turned into numbers
array[4] {
  [0]=>
  string[7] "+123123"
  [1]=>
  string[7] "-123123"
  [2]=>
  string[5] "1.2e3"
  [3]=>
  string[7] "0.00001"
}
string[28] "[123123,-123123,1200,1.0e-5]"
Strings containing improperly formatted numbers
array[2] {
  [0]=>
  string[13] "+a33123456789"
  [1]=>
  string[4] "a123"
}
string[24] "["+a33123456789","a123"]"

Ví dụ 4 về dãy tuần tự và không tuần tự


Kết quả đầu ra của ví dụ trên sẽ như sau

________số 8

Ví dụ 5 tùy chọn JSON_PRESERVE_ZERO_FRACTION


Kết quả đầu ra của ví dụ trên sẽ như sau


0

json_decode là gì?

Để nhận và giải mã chuỗi đã mã hóa JSON, người ta sử dụng hàm json_decode. Giải mã nói một cách đơn giản là khôi phục dữ liệu đã được mã hóa trở về bản gốc. Hàm json_decode được mô tả như sau

Cách viết


1

Tranh luận

  • json. Đối tượng chuỗi ký tự json giải mã
  • phó. Trường hợp là TRUE , thì đối tượng trả về có định dạng mảng kết hợp
  • chiều sâu. Độ sâu đệ quy do người dùng chỉ định
  • tùy chọn. Đây là một bitmask của tùy chọn giải mã JSON. Hiện tại, có hai tùy chọn được hỗ trợ
  1. JSON_BIGINT_AS_STRING
  2. JSON_OBJECT_AS_ARRAY

Lưu ý. Hàm số này chỉ hoạt động đối với chuỗi ký tự đã được mã hóa bằng UTF-8

Giá trị trả lại. Trả về dữ liệu được mã hóa trong json thành kiểu PHP thích hợp TRUE, FALSE và NULL. Nếu json không thể giải mã hoặc dữ liệu được mã hóa quá giới hạn đệ quy, nó sẽ trả về NULL

Cách sử dụng json_decode Sau đây là cách sử dụng hàm json_decode và phương pháp giải mã cho giá trị định dạng chuỗi đã định

chương trình mẫu

Ví dụ 1 json_decode[]


2

Kết quả đầu ra của ví dụ trên sẽ như sau


3

Ví dụ 2 Truy cập đối tượng thuộc tính không hợp lệ

Để truy cập các phần tử chứa các ký tự [không giới hạn như các dấu nối] không thể sử dụng được trong các quy ước đặt tên PHP trong các đối tượng, hãy đặt tên các phần tử trong dấu ngoặc nhọn và dấu nháy


4

Ví dụ 3 Một biến phổ biến lỗi trong json_decode[]


5

Ví dụ 4 lỗi độ sâu


6

Kết quả đầu ra của ví dụ trên sẽ như sau


7

Ví dụ 5 Ví dụ về xử lý các số nguyên lớn với json_decode[]


8

Kết quả đầu ra của ví dụ trên sẽ như sau


9

Chú thích

  • Specs JSON không phải là JavaScript, nó là một tập hợp con của JavaScript

  • Nếu giải mã không thành công, bạn có thể sử dụng json_last_error[] để biết trạng thái chính xác của lỗi

Chủ Đề