2015-12-10 2 views
1

У меня есть массив в PHP, который выглядит следующим образом:Looping думал многоуровневый массив PHP

print_r($myArray); 

Array (
[0] => Array 
    (
     [age] => 1 
     [time] => 2 
     [name] => james 
     [size] => 12 
     [hieght] => 13 
    ) 

[1] => Array 
    (
     [age] => 3 
     [time] => 1 
     [name] => tim 
     [size] => 12 
     [hieght] => 13 
    ) 

[2] => Array 
    (
     [age] => 1 
     [time] => 2 
     [name] => john 
     [size] => 132 
     [hieght] => 4 
    ) 

[3] => Array 
    (
     [age] => 1 
     [time] => 2 
     [name] => logan 
     [size] => 12 
     [hieght] => 11 
    ) 
) 

Im пытается петлю, хотя каждый элемент и сохранить каждый «размер» в новом массиве. Я посмотрел на решения для вытаскивания «размер» от каждого внутреннего массива, но не могу показаться, чтобы получить это право:

$all_sizes = array(); 
foreach($myArray as $value) { 
    foreach($value as $key => $val) { 
     if($key == "size") { 

     } 
    } 
} 

Я новичок в PHP, так им изо всех сил на правильный синтаксис для этой ситуации.

+0

В чем проблема с этим кодом? – Rizier123

+0

SyntaxError: ожидаемое выражение, получено '<' \t
nick

+0

Ошибка, указанная в этом фрагменте кода. Но ответ от @ aldrin27 более эффективен, чем исходный код. – Gonzalo

ответ

2

Удалить следующий Еогеасп()

$all_sizes = array(); 
    foreach($myArray as $value => $getSize) { 
    $all_sizes[] = $getSize['size']; 
    } 
print_r($all_sizes); 
+1

... Удалить следующий foreach() '$ all_sizes = array_column ($ myArray," size ");' – Rizier123

+0

Подождите, пока я запутался со вторым комментарием, что он должен выглядеть как все вместе? – nick

Смежные вопросы