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

#php #arrays #object #variables #array-indexing

#php #массивы #объект #переменные #массив-индексирование

Вопрос:

Здесь у меня есть одномерный числовой массив

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

Ниже преобразовано в массив объектов

 $x = (object) $x;
  

Я не могу получить доступ к значениям по его индексу

 echo  $x->{'1'} //Tried but not working
  

Ответ №1:

Удалите кавычки из индекса в инструкции echo:

 $x = array(1,2,3,4);
$x = (object) $x;

echo $x->{1};
  

ВОЗВРАТ

2

Комментарии:

1. phpfiddle.org здесь я протестировал ваш код. Выдает ошибку {E_NOTICE: тип 8 — Неопределенное свойство: stdClass::$ 1 — в строке 5}

2. Протестировано здесь с PHP 7.2. Какую версию вы использовали?

3. Я использую версию php 5.6.

4. В этом проблема. 5.6 не будет использовать этот синтаксис. Какая версия на вашем сервере?