Как преобразовать объект PHP в ассоциативный массив в PHP

Как преобразовать объект PHP в ассоциативный массив в PHP — это тема сегодняшнего дня. Объект — это экземпляр класса. Это просто образец класса, для которого выделена память. Массив — это структура данных, которая хранит один или несколько аналогичных типов значений с одним именем, но ассоциативный массив отличается от простого массива PHP. Массив, содержащий строковый индекс, называется ассоциативным массивом. Он сохраняет значения элементов вместе со значениями ключей, а не в линейном порядке индекса.

Как преобразовать объект PHP в ассоциативный массив

Мы можем преобразовать, используя два метода.

  1. Используя методы json_encode () и json_decode ().
  2. Приведение типа объекта в массив.

# Использование методов json_encode () и json_decode ()

Мы можем преобразовать объект PHP в ассоциативный массив с использованием методов json_encode и json_decode .

См. следующий код.

  php class ST {function __construct ($ mike, $ eleven) {$ this-> var1 = $ mike;  $ this-> var2 = $ одиннадцать;  }}//Создание объекта $ st3 = new ST ('Finn', 'Millie');  echo "До преобразования:  n";  var_dump ($ st3); //Преобразование объекта в ассоциативный массив $ arr = json_decode (json_encode ($ st3), true);  echo "После преобразования:  n";  var_dump ($ arr); 

Мы определили один класс с именем ST, и в этом классе мы использовали конструктор для установки переменной при создании объект.

Затем мы создаем объект и передаем два параметра конструкторам.

Затем мы используем методы json_encode () и json_decode () для преобразования объекта в ассоциативный массив. См. Вывод.

 ➜ pro php app.php Перед преобразованием: object (ST) # 1 (2) {["var1"] => string (4) "Finn" ["var2"]  => строка (6) "Милли"} После преобразования: array (2) {["var1"] => строка (4) "Finn" ["var2"] => строка (6) "Милли"} ➜ pro 

Вы можете быстро преобразовать глубоко вложенные объекты в ассоциативные массивы, полагаясь на поведение функций кодирования/декодирования JSON.

#Type Casting object to массив

Приведение типов — это способ использования переменной одного типа данных в другой тип данных, и это просто явное преобразование типа данных.

Он может преобразовывать объект PHP в массив, используя правила приведения типов, поддерживаемые в PHP.

См. синтаксис преобразования типов.

 $ arr = (array) $ obj; 

См. следующий код.

  php class ST {function __construct ($ mike, $ eleven) {$ this-> var1 = $ mike;  $ this-> var2 = $ одиннадцать;  }}//Создание объекта $ st3 = new ST ('Finn', 'Millie');  echo "До преобразования:  n";  var_dump ($ st3); //Преобразование объекта в ассоциативный массив $ arr = (array) $ st3;  echo "После преобразования:  n";  var_dump ($ arr); 

Мы должны изменить одну строку, которая следует из приведенного выше кода json_encode ().

 $ arr = (array) $ st3  ; 

Теперь посмотрим на результат.

 ➜ pro php app.php Перед преобразованием: object (ST) # 1 (2) {["var1"] =>  строка (4) "Finn" ["var2"] => строка (6) "Millie"} После преобразования: array (2) {["var1"] => строка (4) "Finn" ["var2"] =  > string (6) "Millie"} ➜ pro 

# Получить свойства данного объекта в PHP

get_object_vars () предоставит нам все свойства данного объекта.

 get_object_vars (object $ object) 

См. пример кода.

  phpclass Data {private $ x = 19;  общедоступный $ y = 11;  общедоступный $ z = 21;  частный $ e = 29;  статический $ m = 46;  общедоступная функция test () {var_dump (get_object_vars ($ this));  }} $ duh = new Data; var_dump (get_object_vars ($ duh)); $ duh-> test (); 

В приведенном выше коде мы получим два разных результата.

Мы получим только общедоступные значения в обоих экземплярах, а частные и защищенные будут зависеть от контекста. См. Вывод.

 ➜ pro php app.phparray (2) {["y"] => int (11) ["z"] => int (21)} array (4)  {["x"] => int (19) ["y"] => int (11) ["z"] => int (21) ["e"] => int (29)} ➜ pro 

Наконец, преобразование объекта PHP в ассоциативный массив в PHP завершено.

Рекомендуемые сообщения

  1. Учебное пособие по функциям PHP с примером | Функции в PHP
  2. Пример PHP str_replace | Учебное пособие по функции PHP str_replace ()
  3. Пример функции PHP Explode | Учебное пособие по разнесению строк в PHP
  4. Пример замены массива PHP | Учебное пособие по функции array_replace ()
  5. Пример переворота массива PHP | Учебное пособие по функции array_flip ()
Оцените статью
nanomode.ru
Добавить комментарий