Преобразование объекта в ассоциативный массив в PHP
Опубликовано: 4 Февраля, 2022
Объект - это экземпляр класса. Это просто образец класса с выделенной памятью. Массив - это структура данных, которая хранит один или несколько аналогичных типов значений с одним именем, но ассоциативный массив отличается от простого массива PHP. Массив, содержащий строковый индекс, называется ассоциативным массивом. Он хранит значения элементов вместе со значениями ключей, а не в линейном порядке индекса.
Метод 1. Использование метода json_decode и json_encode: функция json_decode принимает строку в кодировке JSON и преобразует ее в переменную PHP, с другой стороны, json_encode возвращает строку в формате JSON для заданного значения.
Синтаксис:
$ myArray = json_decode (json_encode ($ object), истина);
Example:
<?php class sample { /* Member variables */ var $var1 ; var $var2 ; function __construct( $par1 , $par2 ) { $this ->var1 = $par1 ; $this ->var2 = $par2 ; } } // Creating the object $myObj = new sample(1000, "second" ); echo "Before conversion:
" ; var_dump( $myObj ); // Converting object to associative array $myArray = json_decode(json_encode( $myObj ), true); echo "After conversion:
" ; var_dump( $myArray ); ?> |
Output:
Before conversion: object(sample)#1 (2) { ["var1"]=> int(1000) ["var2"]=> string(6) "second" } After conversion: array(2) { ["var1"]=> int(1000) ["var2"]=> string(6) "second" }