Tìm hiểu cách tuần tự hóa PHP sang JSON với Các ví dụ dễ làm theo về chuyển đổi chuỗi, đối tượng và mảng PHP sang JSON

Bạn đang xem: đối tượng php cho json

PHP Json_encode : Tuần tự hóa các đối tượng PHP thành JSON

PHP là ngôn ngữ kịch bản phía máy chủ để tạo hệ thống phụ trợ cho trang web của bạn có thể phục vụ các trang web, giao tiếp với cơ sở dữ liệu và trao đổi dữ liệu qua internet. Một khung phụ trợ tốt như PHP cần phải có khả năng cung cấp và xử lý dữ liệu ở bất kỳ định dạng nào (ví dụ: XML, JSON, v.v.) để được xã hội chấp nhận trong một xã hội có các khung phát triển web có kỹ năng.

Vì JSON là một định dạng dữ liệu phổ biến để chia sẻ và lưu trữ dữ liệu, điều quan trọng là phần phụ trợ PHP cho phép xử lý dữ liệu JSON. Đây là nơi json_encode (và json_decode) xuất hiện trong bức tranh và cho phép dữ liệu được xử lý bằng PHP tương thích với các khung và hệ thống xử lý dữ liệu JSON, đồng thời giúp phát triển web nhanh hơn và dễ dàng hơn.

Trong bài đăng này, chúng ta sẽ tìm hiểu về định dạng JSON, về hàm json_encode () – hàm này là gì, tại sao nó cần và cách nó có thể được sử dụng để chuyển đổi cấu trúc dữ liệu PHP sang định dạng JSON, tất cả đều có ví dụ. Cuối cùng, chúng ta cũng sẽ xem cách chúng ta có thể giải mã dữ liệu JSON để có thể xử lý nó. Hãy bắt đầu!

Sử dụng các liên kết này để điều hướng hướng dẫn:

Hàm JSON_Encode là gì?

Chuyển đổi chuỗi PHP thành JSON

Chuyển đổi Đối tượng PHP thành JSON

Chuyển đổi Mảng PHP thành JSON

Tập hợp tất cả lại với nhau

JSON_Decode – Biến JSON thành PHP

Hàm JSON_Encode là gì?

JSON là gì?

JSON (JavaScript Object Notation) là một trong những định dạng tệp tiêu chuẩn mở phổ biến nhất được sử dụng để lưu trữ và chia sẻ dữ liệu. Nó sử dụng văn bản mà con người có thể đọc được để biểu thị dữ liệu bằng cách sử dụng các cặp thuộc tính-giá trị và kiểu dữ liệu mảng.

Đây là giao diện của một đối tượng JSON thông thường –

  {

    "thư viện": {

        "name": "Thư viện của tôi",

        "sách": [

            {"id": 101, "label": "Lorem Ipsum"},

            {"id": 102, "label": "Dolor sir amet"},

            {"id": 103, "label": "Lorem ipsum dolor"}

        ]

    }

}  

Chúng tôi sẽ sử dụng ví dụ này trong các phần bên dưới để hiểu cách chúng tôi có thể mã hóa dữ liệu PHP thành định dạng JSON.

JSON cho phép chúng tôi biểu diễn và đóng gói dữ liệu phức tạp theo cách có tổ chức để có thể dễ dàng chia sẻ trên internet. Mặc dù JSON lấy tên của nó từ JavaScript, nhưng JSON được tạo ra để được sử dụng bởi tất cả các ngôn ngữ lập trình.

Hãy xem cách chúng tôi có thể chuyển đổi các biến PHP của mình sang định dạng JSON.

JSON_Encode – Các biến PHP thành JSON

json_encode () là một hàm PHP gốc cho phép bạn chuyển đổi dữ liệu PHP sang định dạng JSON.

  json_encode (hỗn hợp $ value [, int $ options = 0 [, int $ depth = 512]]): chuỗi

 

Hàm nhận một đối tượng PHP ($ value) và trả về một chuỗi JSON (hoặc Sai nếu thao tác không thành công). Đừng lo lắng về các tham số $ options và $ depth; bạn hiếm khi cần đến chúng.

Hãy xem một ví dụ đơn giản –

  & lt;? php



$ arr = array ('a' = & gt; 1, 'b' = & gt; 2);

echo json_encode ($ arr);



? & gt;  

ĐẦU RA:

Tại sao phải mã hóa thành JSON?

Như chúng ta đã thấy ở trên, JSON là một trong những định dạng phổ biến nhất để trao đổi dữ liệu qua internet. Do đó, trong một số trường hợp, máy chủ PHP có thể bắt buộc phải cung cấp dữ liệu được mã hóa JSON và có thể xử lý dữ liệu đó.

Hãy xem cách chúng tôi có thể mã hóa các cấu trúc dữ liệu PHP khác nhau thành JSON bằng cách sử dụng json_encode () .

Chuyển đổi chuỗi PHP thành JSON

Mã hóa JSON cho một chuỗi là chính chuỗi đó. Do đó, việc mã hóa một chuỗi PHP thành JSON khá đơn giản; nó dẫn đến cùng một chuỗi được trả về.

Hãy xem điều này bằng một ví dụ –

Ví dụ về chuỗi PHP sang JSON

  & lt;? php

$ my_string = "Xin chào Thế giới!";

echo json_encode ($ my_string);

? & gt; ⠀

 

ĐẦU RA:

Chuyển đổi các đối tượng PHP thành JSON

Vì thông tin trong JSON được lưu trữ trong các cặp khóa / giá trị, nên json_encode () có nhiều khả năng được sử dụng để mã hóa các đối tượng PHP và các biến phiên bản của chúng.

Ví dụ về đối tượng PHP thành JSON

Hãy hiểu cách chúng ta có thể mã hóa JSON một đối tượng PHP bằng cách tạo một phiên bản của lớp Sách dựa trên ví dụ về Thư viện mà chúng ta đã thấy ở trên (Phần 1.1). Chúng tôi sẽ tạo hai biến phiên bản cho phiên bản của cuốn sách và mã hóa đối tượng bằng json_encode ().

  & lt;? php

Sách học {

}


$ book = new Book ();

$ book- & gt; id = 101;

$ book- & gt; label = "Lorem ipsum";


$ jsonData = json_encode ($ book);

echo $ jsonData. "\ n";

? & gt;  

ĐẦU RA:

Chuyển đổi Mảng PHP thành JSON

Có ba loại mảng trong PHP, đó là – Mảng được lập chỉ mục, Mảng liên kết và Mảng đa chiều. Hãy cùng chúng tôi xem những điều này là gì và một số ví dụ về cách chúng tôi có thể mã hóa từng thứ này thành JSON –

Mảng được lập chỉ mục thành JSON

Mảng được lập chỉ mục là mảng thông thường được biểu thị bằng số chỉ mục.

Ví dụ: $ arr = array (1,2,3,4); // [1,2,3,4]

Chuyển đổi chúng sang JSON khá dễ dàng –

  & lt;? php

$ arr = array (1,2,3,4);

echo json_encode ($ arr);

? & gt;  

ĐẦU RA:

Mảng liên kết với JSON

Mảng liên kết là mảng sử dụng các khóa được đặt tên làm chỉ số cho các giá trị của bạn.

Ví dụ: $ age = array ("John" = & gt; "11", "Ken" = & gt; "19", "Tim" = & gt; "14");

Chúng tôi cũng có thể đến đối tượng JSON cuốn sách mà chúng tôi đã thấy ở trên bằng cách mã hóa một mảng Liên kết như vậy –

  & lt;? php

$ book = array ("id" = & gt; 101, "label" = & gt; "Lorem Ipsum");

echo json_encode ($ book);

? & gt;  

ĐẦU RA:

Lưu ý cách một mảng được lập chỉ mục được đại diện bởi một mảng trong JSON, trong khi các mảng liên kết có dạng một đối tượng JSON hoàn chỉnh sau khi được mã hóa.

Mảng đa chiều sang JSON

Mảng nhiều chiều có thể được tạo bằng cách lồng các mảng vào nhau như vậy-

  $ multid_arr = array (

  mảng (1,2,3,4),

  mảng (1,2,3,4),

);

 

Chúng tôi có thể tạo một mảng Đa chiều để lưu trữ danh sách sách cho ví dụ thư viện của chúng tôi. Hãy tạo một cái và mã hóa nó thành JSON.

  & lt;? php

$ books = array (

    mảng ("id" = & gt; 101, "label" = & gt; "Lorem Ipsum"),

    mảng ("id" = & gt; 102, "label" = & gt; "Dolor sir amet"),

    mảng ("id" = & gt; 103, "label" = & gt; "Lorem Ipsum dolor"),

);

echo json_encode ($ books);

? & gt;  

ĐẦU RA:

Kết hợp tất cả lại với nhau

Bây giờ chúng ta đã thấy cách json_encode ( ) được sử dụng trong các ngữ cảnh khác nhau, để mã hóa các kiểu dữ liệu PHP khác nhau, hãy tập hợp tất cả các kiến ​​thức của chúng ta để tạo dữ liệu JSON đối với ví dụ về Thư viện mà chúng ta đã thấy ở trên.

  & lt;? php


// MyClass.php


lớp MyClass {

}


Thư viện lớp {

}


Sách học {

}


$ book1 = new Book ();

$ book1- & gt; id = 101;

$ book1- & gt; label = "Lorem ipsum";


$ book2 = new Book ();

$ book2- & gt; id = 102;

$ book2- & gt; label = "Dolor sir amet";


$ books = array ($ book1, $ book2);


$ library = new Library ();

$ library- & gt; books = $ books;


$ myClass = new MyClass ();

$ myClass- & gt; library = $ library;


$ jsonData = json_encode ($ myClass);

echo $ jsonData. "\ n";

 

ĐẦU RA:

Chà, thật là vui! Bây giờ trước khi chúng ta kết thúc, tôi nghĩ rằng rất đáng để xem cách chúng ta có thể chuyển đổi dữ liệu JSON trở lại các biến PHP.

JSON_Decode – Biến JSON thành PHP

Trong trường hợp rất có thể là giao diện người dùng JavaScript của bạn gửi dữ liệu dựa trên JSON trở lại máy chủ PHP của bạn, bạn sẽ cần một cách để giải mã dữ liệu JSON theo cách mà PHP có thể xử lý.

Chúng tôi có thể sử dụng hàm json_decode () của PHP cho cùng một hàm, hàm này nhận một chuỗi được mã hóa JSON và trả về biến PHP tương ứng.

json_decode (string $ json [, bool $ assoc = FALSE [, int $ depth = 512 [, int $ options = 0]]]): hỗn hợp

Tham số $ assoc (Sai ​​theo mặc định) được sử dụng để chỉ định xem bạn cần hàm để trả về một mảng liên kết hay một Đối tượng lớp chuẩn.

Ví dụ về JSON_Decode

Hãy thử truy xuất đối tượng sách mà chúng tôi đã mã hóa thành JSON ở trên bằng cách giải mã nó bằng php_decode () .

  & lt;? php


$ book_json = '{"id": 101, "label": "Lorem Ipsum"}';

$ book = json_decode ($ book_json);

var_dump ($ book);


? & gt;  

ĐẦU RA:

Lưu ý cách trả về đối tượng stdClass theo mặc định. Để giải mã nó dưới dạng mảng liên kết, hãy đặt tham số $ assoc thành True, chẳng hạn như vậy –

$ book = json_decode ($ book_json, True);

Điều này sẽ dẫn đến một mảng Liên kết được trả về.

ĐẦU RA:

Hãy dùng thử Chức năng JSON_Encode cho chính bạn

Trong bài đăng này, chúng tôi đọc về định dạng JSON (Ký hiệu đối tượng JavaScript), tại sao định dạng này lại cần thiết và cách chúng tôi có thể chuyển đổi các biến PHP khác nhau thành JSON bằng cách sử dụng json_encode () . Chúng tôi cũng đã biết cách sử dụng json_decode () để giải mã dữ liệu JSON thành các biến PHP. Với hiểu biết này về xử lý dữ liệu JSON bằng PHP, hãy tiếp tục và mã hóa các đối tượng PHP của bạn thành JSON và chia sẻ chúng trên internet. Tất cả những điều này khi ở nhà. Giữ sức khỏe, giữ an toàn!

Chúc bạn viết mã vui vẻ!

Yên tâm khi biết ứng dụng PHP của bạn đang hoạt động tốt nhất với ScoutAPM


Xem thêm những thông tin liên quan đến chủ đề đối tượng php thành json

Convert CSV to JSON using PHP

  • Tác giả: Webslesson
  • Ngày đăng: 2020-10-16
  • Đánh giá: 4 ⭐ ( 8618 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Learn How to Convert CSV data to JSON in PHP. How to Convert CSV to JSON from uploaded file using PHP script. How to Generate JSON file from CSV file data using PHP. How to convert a CSV file into JSON using PHP. How to Convert CSV to JSON using PHP with Header rows as keys.

    For Source code and Online Demo – https://www.webslesson.info/2020/10/how-to-convert-csv-to-json-in-php.html

JSON trong Javascript

  • Tác giả: kungfutech.edu.vn
  • Đánh giá: 3 ⭐ ( 9803 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.

Xử lý JSON trong PHP

  • Tác giả: laptrinhtudau.com
  • Đánh giá: 5 ⭐ ( 9670 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Xử lý JSON trong PHP – Lập Trình Từ Đầu 2 PHP Nâng Cao

Tuần tự hóa đối tượng PHP thành JSON

  • Tác giả: qastack.vn
  • Đánh giá: 5 ⭐ ( 3376 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] chỉnh sửa : hiện tại là 2016-09-24 và PHP 5.4 đã được phát hành 2012-03-01 và…

Xử Lý Dữ Liệu JSON Đơn Giản Với Javascript

  • Tác giả: codelearn.io
  • Đánh giá: 5 ⭐ ( 7129 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: JSON – Javascript Object Notation, là bộ quy tắc về cách trình bày và mô tả dữ liệu trong một chuỗi lớn thống nhất được gọi chung là chuỗi JSON.

JSON trong PHP

  • Tác giả: comdy.vn
  • Đánh giá: 5 ⭐ ( 1631 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: JSON là gì? Cách khai báo và sử dụng các hàm của PHP để xử lý JSON.

JSON PHP

  • Tác giả: vi.w3hmong.com
  • Đánh giá: 4 ⭐ ( 8300 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Cách sử dụng phổ biến của JSON là đọc dữ liệu từ máy chủ web và hiển thị dữ liệu trong một trang web.

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  Python chia chuỗi bằng dấu phẩy - cách chia chuỗi trong python bằng dấu phẩy

By ads_php