Tuần tự hóa dữ liệu trong PHP – PHPDEV

Thông thường chúng ta cần lưu trữ một mảng phức tạp trong cơ sở dữ liệu hoặc trong một tệp từ PHP (Còn được gọi là tuần tự hóa dữ liệu)

Tuần tự hóa dữ liệu trong PHPTuần tự hóa dữ liệu trong PHP

Mặc dù có thể bạn đã tìm kiếm một số hàm được tích hợp sẵn để thực hiện tuần tự hóa trong PHP.

Mảng phức tạp là những mảng có những thành phần của nhiều kiểu tài liệu hoặc nhiều mảng .

Nhưng, chúng ta có một giải pháp tốt hơn để xử lý tình huống này.

Chúng ta cũng không phải viết hàm riêng để chuyển mảng phức tạp thành chuỗi có định dạng .

Có hai phương thức phổ biến của tuần tự hóa dữ liệu, đó là:

  • serialize()
  • unserialize()

Ví dụ về tuần tự hóa dữ liệu trong PHP với serialize() / unserialize().

Chúng ta có thể tuần tự hóa bất kỳ dữ liệu nào trong PHP bằng cách sử dụng hàm serialize().

Hàm serialize() chấp nhận một tham số duy nhất là dữ liệu chúng ta muốn tuần tự hóa và trả về một chuỗi tuần tự hóa.

Hãy xem ví dụ bên dưới đây :

 

Kết quả tất cả chúng ta có :

Array
(
    [0] => Xin chào
    [1] => 123
    [2] => Array
        (
            [0] => 1
            [1] => laptrinhvienphp.com
        )

    [3] => học php
)

Đây là phương thức tuần tự hóa PHP gốc. Tuy nhiên, vì kiểu dữ liệu JSON đã trở nên rất phổ biến và nhà PHP Core Teams đã quyết định thêm hỗ trợ cho nó trong từ phiên bản PHP 5.2.

Bây giờ bạn có thể sử dụng các hàm json_encode()json_decode() để tuần tự hóa và hủy tuần tự hóa dữ liệu trong PHP.

Ví dụ về tuần tự hóa dữ liệu trong PHP với json_encode() / json_decode().

Vì định dạng JSON chỉ là dạng văn bản, nó có thể dễ dàng được gửi đến / đi từ một máy chủ và có thể được sử dụng làm định dạng dữ liệu bởi bất kỳ ngôn ngữ lập trình nào.

Hãy xem cách sử dụng json_encode() trong PHP qua ví dụ dưới đây:

Kết quả khi chạy chương trình là :

["Xin chào",123,[1,"laptrinhvienphp.com"],"học php"]

Chúng ta có thể giải mã dữ liệu được mã hóa trong chương trình trên bằng cách sử dụng hàm json_decode() để lấy mảng phức tạp ban đầu.

Cách giải thuật như sau :

 

Kết quả đầu ra là :

Array
(
    [0] => Xin chào
    [1] => 123
    [2] => Array
        (
            [0] => 1
            [1] => laptrinhvienphp.com
        )

    [3] => học php
)

Lưu ý : Mã hóa / Giải mã JSON nhỏ gọn hơn và tốt nhất là thích hợp với Javascript và nhiều ngôn từ khác. Tuy nhiên, so với những đối tượng người dùng phức tạp, 1 số ít thông tin hoàn toàn có thể bị mất .

Bạn đã hiểu cách tuần tự hóa dữ liệu chưa?

Đây là chỉ một cách đơn giản nhất giúp bạn hiểu các chúng ta tuần tự hóa dữ liệu trong PHP.

Thực tế sử dụng sẽ cần tình huống cụ thể và yêu cầu cụ thể để có được kết quả như mong muốn.

Chúc bạn học lập trình PHP tốt hơn .

>> Tham khảo: Khóa học PHP (Toàn diện: Sáng diện, trưa diện, tối diện)

PHPDEV