2017-02-21 17 views
-2

Я хочу, чтобы итерации массированных массивов массивов. Что у меня есть:Php массив массивов получить правильный результат

$params = [ 
'regs' => [156, 154, 138, 132, 142, 144], 
'axis' => [0, 0, 0, 0, 0, 0], 
'visible' => [1, 1, 0, 1, 0, 0], 
'dependencies' => [1, 1, 1, 1, 1, 1], 
]; 

Что я хочу получить:

foreach() { 
foreach() { 
    render_element(reg = 156, axis = 0, visible = 1, dep = 1); 
    *render_element(reg = 154, axis = 0, visible = 1, dep = 1); 
    *render_element(reg = 138, axis = 0, visible = 0, dep = 1); etc 
} 
} 
+1

Вы удосужились проверить, как Еогеасп работает петля? Что вы пробовали, что не работает? Кроме того, все подмассивы всегда имеют одинаковую длину? http://php.net/manual/en/control-structures.foreach.php – domsson

+0

Не могли бы вы описать, что вы пытаетесь достичь (требования), что вы уже пробовали и какое сообщение об ошибке вы получили? – JeromeFr

ответ

3

Возможно, вы захотите выполнить итерацию в первом массиве regs и использовать тот же ключ для печати значений из других массивов, так как клавиши выглядят идентично следующим образом:

foreach($params['regs'] as $key => $val) { 
    echo 'render_element(reg ='. $val.', axis ='. $params['axis'][$key].', visible ='. $params['visible'][$key].', dep ='.$params['dependencies'][$key].');' . "\n"; 
} 

Это напечатает

render_element(reg =156, axis =0, visible =1, dep =1); 
render_element(reg =154, axis =0, visible =1, dep =1); 
render_element(reg =138, axis =0, visible =0, dep =1); 
render_element(reg =132, axis =0, visible =1, dep =1); 
render_element(reg =142, axis =0, visible =0, dep =1); 
render_element(reg =144, axis =0, visible =0, dep =1); 

live demo

+0

Вы можете сделать это с помощью 'for ($ i = 0; $ i Loko

+0

Да, вы также можете сделать так – Fabio

+0

Спасибо! Просто не мог побить эту простую вещь :( – MaoStream

0

Если вы уверены, что все массивы в Params имеют одинаковую длину вы можете использовать обычный цикл:

for($i=0; $i<count($params["regs"]); ++$i) 
{ 
    render_element($params["regs"][i], 
    $params["axis"][i], 
    $params["visible"][i], 
    $params["dependencies"][i]) 
}