Перебор массива foreach php

Рейтинг: -2Ответов: 1Опубликовано: 19.02.2023

Пытаюсь перебрать массив:

foreach ( $cums as $cum ) {
  $tag = $cum['service']['tag'];
  $text= array($tag);
} 

Содержание $cums -

{"service":{"tag":{"de":"de","jo":"jo"},"name":{"de":"\ud83c\udde9\ud83c\uddea Quoka","jo":"\u0425\u0443\u0439\u043d\u044f"},"domain":{"de":"quoka-de","jo":"kdjfds-jo"}}}

Хочу получить данные de,jo

В чем ошибка?

Ответы

▲ 0

Вы можете разобрать ваш JSON следующим образом

<?php

$str = '{
   "service":{
      "tag":{
         "de":"de",
         "jo":"jo"
      },
      "name":{
         "de":"\ud83c\udde9\ud83c\uddea Quoka",
         "jo":"\u0425\u0443\u0439\u043d\u044f"
      },
      "domain":{
         "de":"quoka-de",
         "jo":"kdjfds-jo"
      }
    }
}';

$data = json_decode($str, true); // decode the JSON string into an associative array

$de = array();
$jo = array();

foreach ($data['service'] as $key => $value) {
    $de[$key] = $value['de'];
    $jo[$key] = $value['jo'];
}

// output the results
print_r($de);
print_r($jo);

?>

Вот реализация.