Làm cách nào để phản đối một mảng trong php?
Đôi khi trong PHP, bạn có thể thấy mình cần chuyển đổi một mảng thành một đối tượng. Trong thủ thuật nhỏ này, chúng ta sẽ thấy điều này có thể đạt được dễ dàng như thế nào Show
Thời gian đọc. 2 phút Giới thiệuĐôi khi trong PHP, bạn có thể thấy mình cần chuyển đổi một mảng thành một đối tượng. Trong thủ thuật nhỏ này, chúng ta sẽ thấy điều này có thể đạt được dễ dàng như thế nào MảngGiả sử, bạn được cung cấp một mảng thuộc tính nào đó chứa một mảng khác. Nghe có vẻ phức tạp? [ 'foo', 'bar' ] ]; Đầu raTrên mảng print_r, bạn có thể nhận được kết quả giống như array:1 [▼ "items" => array:2 [▼ 0 => "foo" 1 => "bar" ] ] Chuyển đổi thành một đối tượngVì vậy, hãy chuyển đổi mảng này thành một đối tượng. Ở đây chúng tôi sẽ sử dụng json_encode và json_decode. JSON là ký hiệu đối tượng JavaScript & PHP cung cấp cho chúng tôi khả năng mã hóa và giải mã JSON – mã hóa json. Để chuyển đổi một mảng thành chuỗi json – json_decode. Để chuyển đổi một chuỗi json thành một đối tượng Bước 1 – Mã hóa nó thành một chuỗi$object = json_encode($array); var_dump đối tượng này sẽ giúp bạn có được thứ gì đó như "{"items":["foo","bar"]}" Chuỗi thông tin này có thể hữu ích cho những thứ như lưu trữ vào cơ sở dữ liệu Bước 2 – Giải mã nó thành một đối tượngBây giờ khi chúng ta có một chuỗi json, chúng ta có thể sử dụng json_decode để chuyển đổi và định dạng chuỗi này thành một đối tượng. Hãy thử điều đó $object = json_decode(json_encode($array)); var_dump đối tượng này bây giờ sẽ giúp bạn stdClass Object ( [items] => Array ( [0] => foo [1] => bar ) ) Một điều cần lưu ý về json_decode là, nó chuyển đổi một chuỗi json thành một đối tượng trừ khi bạn cung cấp tùy chọn thứ hai là một boolean có thể đúng hoặc sai. Nếu bạn đặt tham số thứ hai thành “true”, bạn sẽ vẫn nhận được một mảng Trường hợp sử dụngCuối cùng, chúng ta đã chuyển đổi thành công mảng của mình thành một đối tượng, chúng ta có thể sử dụng nó như foreach ($object->items as $item) { echo $item; } Hãy tự mình thử thủ thuật nhỏ này và để lại cho chúng tôi một bình luận bên dưới nếu bạn có bất kỳ câu hỏi nào liên quan đến điều này Cách tốt hơn xung quanhSử dụng mã hóa và giải mã JSON để chuyển đổi mảng thành đối tượng có thể tiêu tốn nhiều tài nguyên nếu mảng lớn hơn. Theo cách này, cách tốt hơn để chuyển một mảng thành một đối tượng là sử dụng kiểu truyền đối tượng. Ví dụ $object = (object)$array; Điều này cũng sẽ trở lại stdClass Object ( [items] => Array ( [0] => foo [1] => bar ) ) Tùy thuộc vào bạn chọn phương pháp nào giữa hai phương pháp để chuyển đổi một mảng thành một đối tượng trong PHP #PHP Usama MuneerMột Nhà phát triển Web Full-Stack chuyên nghiệp nhiệt tình, năng động và định hướng chi tiết đến từ Karachi, Pakistan với kinh nghiệm phát triển các ứng dụng bằng JavaScript, WordPress & Laravel cụ thể. Thích viết về các công nghệ web khác nhau với một kỹ năng hữu ích không kém để hiểu ý nghĩa của nó Chúng ta có thể sử dụng hàm Ví dụ, tạo một lớp 0 của lớp Motorcycle bằng cách sử dụng từ khóa 2. Điền vào các thuộc tính của đối tượng với bất kỳ giá trị phù hợp nào. Tương tự, tạo một đối tượng khác, 3 và điền các giá trị tương ứng. Tiếp theo, tạo một biến 4 và viết hàm array() cho nó với hai đối tượng 0 và 3 làm tham số. Cuối cùng, in biến mảng 8 bằng hàm 9Vì vậy, chúng ta có thể tạo một mảng các đối tượng, như được hiển thị trong phần đầu ra. Chúng tôi đã tạo một mảng gồm các đối tượng
|