У меня есть следующий массив, который мне нужно использовать в шаблоне представления электронной почты laravel
$inputs['test']
Который выглядит так, когда я dd($inputs['test']);
Array:1[
"order" => array:2[
0 => 523
1 => 522
]
]
Я пробовал это в моем цикле foreach, но это не работает
foreach($inputs['test']->order as $test){
echo $test;}
Какой синтаксис мне нужно было бы выводить каждое значение из порядка вложенного массива?
Вы должны использовать массив, а не объектный цикл:
foreach($inputs['test']['order'] as $test){
echo $test;
}
Вы используете квадратные скобки [] для доступа к значениям массива, стрелки -> для доступа к свойствам объектов
foreach($inputs['test']['order'] as $test){
echo $test;
}
Пытаться
$inputs['test']['order'][0]
По сути, php читает вложенные массивы как массивы в массивах .. поэтому независимо от того, сколько вложенных массивов вы всегда можете использовать [][][][][]
<?php
$array = array(
"foo" => "bar",
42 => 24,
"multi" => array(
"dimensional" => array(
"array" => "foo")
)
);
var_dump($array["foo"]);
var_dump($array[42]);
var_dump($array["multi"]["dimensional"]["array"]);
?>
и вы можете использовать его в цикле как таковом
foreach($inputs['test']['order'] as $test){
echo $test;}
Сначала у вас есть то, что является ключевым и какова ценность массивов
Есть несколько способов отображения массивов, это один из способов
foreach($inputs['test']['order'] as $key => $test){
echo 'Key ->'.$key.'<br/>';
echo 'Value ->'. $test. '<br/>';
}
$myEcho = function($x){
if(is_array($x)){foreach($x as $one){$myEcho($one);}
}else{ echo $x; }
};
array_map($myEcho, $inputs['test']['order']);