как сделать строку из слов двух многомерных массивов???

arte4mi

как сделать одну строку из слов двух многомерных массивов?

PHP:
  1. <?php
  2. $arr1 = [
  3.  
  4.     100, 200, 300, «test», [50, «goo»], «text», 400, NULL, true,
  5.  
  6. ];
  7.  
  8. $arr2 = [
  9.  
  10.     NULL, 1000, [50, «too»], «foo», «bar», true, 100, 500, 1000, 100, false, NULL
  11.  
  12. ];
 

Drunkenmunky

Пример строки приведите.
Или уточните для чего это нужно.

 

arte4mi

Должно получится : test goo text too foo bar

 

Drunkenmunky

То есть чисел в ней быть не должно?

 

arte4mi

через implode не получается, или нужно еще через цикл

нет только «string»
— Добавлено —

я написал код, но как вывесть его через переменные в новой строке?

PHP:
  1. foreach ($arr2 as $key2 => $value2) {
  2.     if (is_string($value2)) {
  3.         echo $value2 . ‘ ‘;
  4.     } elseif (is_array($value2)) {
  5.         foreach ($value2 as $str2) {
  6.             if (is_string($str2)) {
  7.                 echo $str2 . ‘ ‘;
  8.             }
  9.         }
  10.     }
  11. }
  12.  
  13. foreach ($arr1 as $key1 => $value1) {
  14.     if (is_string($value1)) {
  15.         echo $value1 . ‘ ‘;
  16.     } elseif (is_array($value1)) {
  17.         foreach ($value1 as $str1) {
  18.             if (is_string($str1)) {
  19.                 echo $str1 . ‘ ‘;
  20.             }
  21.         }
  22.     }
  23. }

— Добавлено —
как результаты в echo приравнять к переменной, чтобы я после мог в одной строке используя конкатенацию вывести эти строки ?
например : Результат получения строк — test goo text too foo bar

 

Drunkenmunky

PHP:
  1. <?php
  2. $arr1 = [
  3.  
  4.     100, 200, 300, «test», [50, «goo»], «text», 400, NULL, true,
  5.  
  6. ];
  7.  
  8. $arr2 = [
  9.  
  10.     NULL, 1000, [50, «too»], «foo», «bar», true, 100, 500, 1000, 100, false, NULL
  11.  
  12. ];
  13.  
  14. $str = »;
  15.  
  16. function add_to_str($value)
  17. {
  18.   global $str;
  19.  
  20.     if(is_string($value)) $str .= «$value «;
  21. }
  22.  
  23. array_walk_recursive(array_merge($arr1, $arr2), ‘add_to_str’);
  24.  
  25. echo $str;
  26.  
  27. ?>
 

MouseZver

@Drunkenmunky у array_walk_recursive первый аргумент как ссылка, ознакомься в доке

 

Drunkenmunky

Хорошо.
Редко этим пользуюсь. Как понадобится, гляну.

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *