Удаление вложенного массива из массива и присвоение новой переменной в php

#php #arrays #json

#php #массивы #json

Вопрос:

Хорошо, итак, я читал о многомерных массивах, но моя проблема такова, я десериализирую строку JSON в массив php, и результат такой при декодировании. Теперь я хочу присвоить comparisionResultDTOarr новому массиву. Имя массива — $data

 array (size=1)
  0 => 
    object(stdClass)[1]
      public 'class' => string 'com.ofss.fc.app.ops.config.response.CompareDomainObjectResponse' (length=63)
      public 'comparisonResultDTOarr' => 
        array (size=24)
          0 => 
            object(stdClass)[2]
              ...
          1 => 
            object(stdClass)[5]
              ...
          2 => 
            object(stdClass)[8]
              ...
          3 => 
            object(stdClass)[11]
              ...
          4 => 
            object(stdClass)[14]
              ...
          5 => 
            object(stdClass)[17]
              ...
          6 => 
            object(stdClass)[20]
              ...
          7 => 
            object(stdClass)[23]
              ...
          8 => 
            object(stdClass)[26]
              ...
          9 => 
            object(stdClass)[29]
              ...
          10 => 
            object(stdClass)[32]
              ...
          11 => 
            object(stdClass)[35]
              ...
          12 => 
            object(stdClass)[38]
              ...
          13 => 
            object(stdClass)[41]
              ...
          14 => 
            object(stdClass)[44]
              ...
          15 => 
            object(stdClass)[47]
              ...
          16 => 
            object(stdClass)[50]
              ...
          17 => 
            object(stdClass)[53]
              ...
          18 => 
            object(stdClass)[56]
              ...
          19 => 
            object(stdClass)[59]
              ...
          20 => 
            object(stdClass)[62]
              ...
          21 => 
            object(stdClass)[65]
              ...
          22 => 
            object(stdClass)[68]
              ...
          23 => 
            object(stdClass)[71]
              ...
      public 'configVersionId' => null
      public 'maintenanceType' => null
      public 'percentage' => float 93.103448275862
      public 'resultColor' => string 'GREEN' (length=5)
      public 'status' => null
  

Я попытался сделать:-

 $new_array = $data[0]->['comparisionResultDTOarr'];
  

но, похоже, это не работает. Кто-нибудь может мне помочь?

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

1. Вы не используете правильный синтаксис. $data[0] это объект, поэтому правильный путь $data[0]->comparisionResultDTOarr .

2. @Jon когда я пытаюсь, это выдает мне ошибку как таковую: «Обратите внимание: неопределенное свойство: stdClass::$comparisionResultDTOarr в C:wampwwwdump.php в строке 11»

3. Ну, либо сообщение об ошибке лжет, либо вы действительно не показали нам значение $data .

4. Это var_dump из $data . Нужно ли мне где-то использовать индекс 1 для ссылки на первый объект или нет? Спасибо за вашу помощь @Jon

5. @damienhawks: Нет, [1] in object(stdClass)[1] — это внутренний счетчик для PHP, вас это вообще не касается.