@eternalfire

Как вывести элементы массива?

Есть массив
<?php
$a  = ["Один"=>
		  ["Два"=>
		   ["Три"=>
			["Четыре"]
			]
		   ]
		  ];
?>

Как сделать так, чтоб при выводе получилась строка
Один, Два, Три, Четыре
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
0xD34F
@0xD34F
Рекурсия.

function getRecursiveStr($arr) {
  $t = [];

  $keys = array_keys($arr);
  foreach ($keys as $key) {
    if (is_array($arr[$key])) {
      $t[] = $key;
      $t[] = getRecursiveStr($arr[$key]);
    } else {
      $t[] = $arr[$key];
    }
  }

  return implode(', ', $t);
}

$a = [
  "Один" => [
    "Два" => [
      "2.87" => [
        "2.88",
        "2.89"
      ],
      "Три" => [
        "Три с половиной",
        "Четыре"
      ]
    ]
  ]
];

echo getRecursiveStr($a); // выведет "Один, Два, 2.87, 2.88, 2.89, Три, Три с половиной, Четыре"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы