Неопределенное свойство: преобразование массива в объект - PullRequest
0 голосов
/ 12 июля 2020

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

$applicationDetail = (object) array([
      'completedApplication' => 3,
      'incompleteApplication' => 4,
      'totalApplication' => 5,
  ]);

dd($applicationDetail->completedApplication);

Запуск блока кода дает ошибку:

Undefined property: stdClass::$completedApplication

Что я делаю не так, пожалуйста?

Ответы [ 2 ]

1 голос
/ 12 июля 2020

Сделайте это как

  $applicationDetail = (object) [
      'completedApplication' => 3,
      'incompleteApplication' => 4,
      'totalApplication' => 5,
  ];

dd($applicationDetail->completedApplication); // will give output 3

Вы создаете 2d-массив, если вы сделаете

$applicationDetail = (object) array([
      'completedApplication' => 3,
      'incompleteApplication' => 4,
      'totalApplication' => 5,
  ]);
print_r($applicationDetail);

Он покажет результат

stdClass Object
(
    [0] => Array
        (
            [completedApplication] => 3
            [incompleteApplication] => 4
            [totalApplication] => 5
        )

)
1 голос
/ 12 июля 2020

Я не знаю, какой формат в вашем массиве. Похоже, квадратные скобки не нужны. Попробуйте:

$applicationDetail = (object) array(
        'completedApplication' => 3,
        'incompleteApplication' => 4,
        'totalApplication' => 5,
    );
dd($applicationDetail->completedApplication);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...