Mã hóa và giải mã PHP JSON – mã hóa json và giải mã json

Giải mã mã hóa JSON là một trong những hoạt động được yêu cầu thường xuyên nhất. Trong bài này, chúng ta sẽ xem cách mã hóa và giải mã JSON bằng PHP. PHP cung cấp các hàm tích hợp để thực hiện hai thao tác này. Đó là, json_encode () json_decode () Trong bài viết này, chúng ta sẽ tìm hiểu về các hàm này với các ví dụ phù hợp. Ngoài […]

Bạn đang xem: mã hóa json và giải mã json

Mã hóa và giải mã PHP JSON

bởi Vincy . Sửa đổi lần cuối vào ngày 8 tháng 7 năm 2022.

Giải mã mã hóa JSON là một trong những hoạt động được yêu cầu thường xuyên nhất. Trong bài này, chúng ta sẽ xem cách mã hóa và giải mã JSON bằng PHP. PHP cung cấp các hàm tích hợp để thực hiện hai thao tác này. Đó là,

  1. json_encode ()
  2. json_decode ()

Trong bài viết này, chúng ta sẽ tìm hiểu về các hàm này với các ví dụ phù hợp. Ngoài các chức năng này, hướng dẫn đầy đủ về cách xử lý JSON với PHP sẽ hữu ích để bạn biết thêm về PHP JSON.

Mã hóa và giải mã

Mã hóa và giải mã là cặp phép toán quan trọng nhất được sử dụng trong nhiều lập trình ứng dụng. Trước đây, chúng ta đã thấy các hàm PHP url_encode () và url_decode () để thực hiện mã hóa và giải mã một URL nhất định.

Mã hóa được sử dụng để nhóm dữ liệu theo một định dạng cụ thể. Quá trình này sẽ được yêu cầu để duy trì tính nhất quán của dữ liệu. Giải mã là một quy trình ngược lại nhằm hoàn nguyên dữ liệu đã mã hóa về dạng ban đầu.

Mã hóa PHP JSON

Trong PHP, json_encode () được sử dụng để chuyển đổi kiểu dữ liệu được PHP hỗ trợ thành chuỗi có định dạng JSON để được trả về do hoạt động mã hóa JSON. Hàm này chấp nhận tập hợp các đối số sau đây.

  • Dữ liệu được mã hóa.
  • Các tùy chọn với hằng số mã hóa JSON để phản ánh các tác động lên hành vi mã hóa.
  • Giới hạn độ sâu để thực hiện mã hóa đệ quy với các mức đầu vào lồng nhau.

Hằng số JSON được xác định trước

Đối với mã hóa PHP JSON, danh sách hằng số sau đây sẽ được sử dụng cho tham số tùy chọn của hàm json_encode ().

    • JSON_HEX_TAG – Được sử dụng để mã hóa nội dung HTML bằng cách thay thế & lt; và & gt; ký hiệu bằng \ u003C và \ u003E.
    • JSON_HEX_AMP – Được sử dụng để mã hóa dữ liệu bằng cách thay thế ký hiệu và ký hiệu (& amp;) bằng \ u0026.
    • JSON_HEX_APOS – mã hóa dấu nháy đơn (‘) bằng \ u0027.
    • JSON_HEX_QUOT – chuyển đổi dấu ngoặc kép (“) thành \ u0022.
    • JSON_FORCE_OBJECT – Sử dụng điều này, json_encode sẽ trả về một đối tượng cho dữ liệu đầu vào nhất định ngoại trừ mảng kết hợp.
    • JSON_NUMERIC_CHECK – Hàm mã hóa JSON trong PHP sẽ trả về các số do kết quả của việc mã hóa một số đã cho với kiểu dữ liệu chuỗi.
    • JSON_BIGINT_AS_STRING – Hằng số này được sử dụng để chuyển đổi giá trị số nguyên của nhật ký thành một chuỗi.
    • JSON_PRETTY_PRINT – chữ in đẹp được sử dụng để thêm khoảng trắng với dữ liệu được định dạng JSON.
    • JSON_UNESCAPED_SLASHES – Nó ngăn chặn việc thoát dấu gạch chéo (/).
    • JSON_UNESCAPED_UNICODE – Nó ngăn không cho thoát các ký tự Unicode.
Xem Thêm  SQL Server ALTER TABLE ALTER COLUMN By Examples - thay đổi kiểu dữ liệu cột trong máy chủ sql

Ví dụ: PHP json_encode ()

Bây giờ, đã đến lúc xem một chương trình PHP mẫu để thực hiện mã hóa JSON. Vì vậy, chương trình sau xử lý một vài hàm json_encode () được gọi với một số hằng số mã hóa JSON có sẵn làm tham số tùy chọn của nó.

  & lt;? php
$ input_array = array (
    "số không",
    "một",
    "hai"
);
// trả về ["zero", "one", "two"]
$ str_json_format = json_encode ($ input_array);
print "Chuỗi được định dạng JSON:". $ str_json_format;
// trả về {"0": "zero", "1": "one", "2": "two"}
$ obj_json_format = json_encode ($ input_array, JSON_FORCE_OBJECT);
print "& lt; br / & gt; & lt; br / & gt; JSON Object:". $ obj_json_format;
// trả về ["zero", "one", "two"]
$ strJsonFormat_with_space = json_encode ($ input_array, JSON_PRETTY_PRINT);
print "& lt; br / & gt; & lt; br / & gt; JSON Formatted String với khoảng trắng:". $ strJsonFormat_with_space;
? & gt;
 

Lưu ý:

      • PHP json_encode () được sử dụng để chuyển đổi bất kỳ loại dữ liệu nào ngoại trừ dữ liệu tài nguyên PHP .
      • Trong khi sử dụng JSON_FORCE_OBJECT để mã hóa giá trị mảng PHP, thì mỗi phần tử mảng sẽ được thêm vào một chỉ mục ngay cả khi mảng đầu vào không có chỉ mục.

Giải mã dữ liệu JSON bằng PHP

Đây là hoạt động ngược lại của mã hóa JSON, rõ ràng được sử dụng để chuyển đổi dữ liệu được mã hóa JSON thành kiểu dữ liệu PHP gốc từ nơi nó được mã hóa ban đầu.

Vì vậy, phương thức thứ hai json_decode () mà chúng tôi đã liệt kê ở đầu bài viết này sẽ được sử dụng. Hàm này chấp nhận bốn đối số như được liệt kê bên dưới.

      • Chuỗi có định dạng JSON sẽ được giải mã.
      • Tập giá trị Boolean dựa trên đó một mảng kết hợp sẽ được trả về nếu nó đúng.
      • giới hạn độ sâu.
      • tùy chọn.

Đối số thứ ba và thứ tư giống như chúng ta đã thấy đối với json_encode (). Giá trị mặc định cho giới hạn độ sâu là 512. Và, PHP được hỗ trợ liên tục cho tham số tùy chọn của hàm này là JSON_BIGINT_AS_STRING, được sử dụng để chuyển đổi số nguyên dài thành dữ liệu thực.

Xem Thêm  GeeksforGeeks - chủ đề trong java là gì

Ví dụ: json_decode ()

Với chương trình ví dụ PHP ở trên, chúng ta cần nối các dòng sau.

  & lt;? php
$ str_json_array_decoded = json_decode ($ str_json_format);
print "& lt; br / & gt; & lt; br / & gt; Mảng được giải mã kết quả từ mảng JSON: & lt; br / & gt;";
in "& lt; PRE & gt;";
print_r ($ str_json_array_decoded);
in "& lt; / PRE & gt;";

$ str_objJson_decoded = json_decode ($ obj_json_format);
in "& lt; br / & gt; & lt; br / & gt; Dữ liệu đối tượng được giải mã kết quả từ đối tượng JSON: & lt; br / & gt;";
in "& lt; PRE & gt;";
print_r ($ str_objJson_decoded);
in "& lt; / PRE & gt;";

$ str_jsonAry_decoded = json_decode ($ obj_json_format, true);
print "& lt; br / & gt; & lt; br / & gt; Dữ liệu mảng được giải mã kết quả từ đối tượng JSON: & lt; br / & gt;";
in "& lt; PRE & gt;";
print_r ($ str_jsonAry_decoded);
in "& lt; / PRE & gt;";
? & gt;
 

Sau đó, khi thực thi mã này, kết quả sau sẽ được trả về trình duyệt.

  Mảng được giải mã kết quả từ mảng JSON:
Mảng
(
    [0] = & gt; số không
    [1] = & gt; một
    [2] = & gt; hai
)
Dữ liệu đối tượng được giải mã kết quả từ đối tượng JSON:
Đối tượng stdClass
(
    [0] = & gt; số không
    [1] = & gt; một
    [2] = & gt; hai
)
Dữ liệu mảng được giải mã kết quả từ đối tượng JSON:
Mảng
(
    [0] = & gt; số không
    [1] = & gt; một
    [2] = & gt; hai
)
 

Lưu ý:

      • Trong khi truyền một mảng hoặc đối tượng kết hợp có cặp khóa và giá trị cho json_decode (), giá trị khóa phải được đặt trong dấu ngoặc kép. Nếu không, json_decode () sẽ trả về NULL.

Tải xuống PHP JSON Encode Decode Source Code

↑ Quay lại đầu trang


Xem thêm những thông tin liên quan đến chủ đề mã hóa json và giải mã json

JSON là gì? JSON được sử dụng như thế nào trong Javascript?

  • Tác giả: F8 Official
  • Ngày đăng: 2020-09-20
  • Đánh giá: 4 ⭐ ( 1912 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: JSON là gì? JSON được sử dụng như thế nào trong Javascript?

    🔥 Hãy chia sẻ các khóa học để mọi người được học MIỄN PHÍ ❤️
    🔥 Truy cập http://fullstack.edu.vn (miễn phí) để làm bài tập và quản lý được tiến độ học của bạn. Trong tương lai còn giúp bạn có hồ sơ đẹp trong mắt Nhà Tuyển Dụng.
    🔥 Tham gia nhóm Học lập trình tại F8 trên Facebook: https://www.facebook.com/groups/f8official/

    hoclaptrinh mienphi frontend backend devops
    —————————————
    HỌC LẬP TRÌNH MIỄN PHÍ
    1. Khóa Javascript cơ bản: https://fullstack.edu.vn/courses/javascript-co-ban
    2. Khóa HTML, CSS: https://fullstack.edu.vn/courses/html-css
    3. Khóa Responsive web design: https://fullstack.edu.vn/courses/responsive-web-design
    4. Khóa Xây dựng web với NodeJS & ExpressJS: https://fullstack.edu.vn/courses/nodejs
    —————————————
    LIÊN KẾT HỮU ÍCH
    1. Học lập trình: http://fullstack.edu.vn
    2. Viết CV xin việc: http://mycv.vn
    3. Danh sách phát Youtube: https://www.youtube.com/channel/UCNSCWwgW-rwmoE3Yc4WmJhw/playlists
    ———————————————————–
    LIÊN HỆ
    1. Facebook: https://fb.com/sondnmc
    2. Email: sondnf8@gmail.com

    Yêu các bạn ❤️

Mã hóa / giải mã JSON

  • Tác giả: vi.rakko.tools
  • Đánh giá: 4 ⭐ ( 4448 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Nhập một mảng trong khu vực đầu vào bên trái và nhấp vào nút mã hóa để mã hóa nó thành một chuỗi JSON.Nhập chuỗi JSON vào khu vực nhập bên phải và nhấp vào nút giải mã để giải mã nó thành một mảng.JSON là gì?Viết tắt cho Ký hiệu đối tượng JavaScript, định dạng dữ liệu dựa trên văn bản tương tự nh…

Mã hóa web JSON (JWE) trong .NET Core

  • Tác giả: helpex.vn
  • Đánh giá: 4 ⭐ ( 1728 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Mã thông báo web JSON đã ký (JWT) là một trong những cấu trúc hữu ích và phổ biến nhất mà bạn sẽ thấy trôi nổi trên các hệ thống bảo mật hiện đại. Những mã thông báo này cung cấp cho chúng…

Hiểu rõ về JSON là gì? Cách lấy dữ liệu từ JSON

  • Tác giả: topdev.vn
  • Đánh giá: 3 ⭐ ( 3488 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: JSON là viết tắt của JavaScript Object Notation, là một kiểu định dạng dữ liệu tuân theo một quy luật nhất định mà hầu hết các ngôn ngữ lập trình hiện nay đều có thể đọc được. JSON là một tiêu chuẩn mở để trao đổi dữ liệu trên web.

JSON trong PHP – Nắm rõ cách sử dụng JSON trong 10 phút

  • Tác giả: t3h.com.vn
  • Đánh giá: 3 ⭐ ( 5780 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bài viết dưới đây sẽ giới thiệu tới bạn về JSON trong PHP và một số cách sử dụng JSON để làm việc hiệu quả với trong lập trình PHP

MÃ HÓA VÀ GIẢI MÃ VỚI CÁC VÍ DỤ

  • Tác giả: vi.ichlese.at
  • Đánh giá: 5 ⭐ ( 5120 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bài viết này về Python JSON sẽ giúp bạn tìm hiểu cách phân tích cú pháp, tuần tự hóa và giải mã hóa JSON với sự trợ giúp của các chương trình ví dụ.

json_encode và json_decode trong PHP

  • Tác giả: viblo.asia
  • Đánh giá: 5 ⭐ ( 1135 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Trong PHP người ta sử dụng hàm số để convert data thành định dạng JSON và để decode định dạng JSON.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  Thuộc tính kích thước nền CSS - cách thay đổi kích thước nền trong html