我有一个数组,其中包含不同的数组值。我想循环遍历这些数组以获取所有值但由于某种原因它只会遍历第一个数组。
这里是数组的样子: 这个数组的名称是插槽。
Array
(
[41] => Array
(
[0] => Array
(
[attractie] => attractie1
[start] => 0930
[end] => 1200
[personen] =>
[catering] => 1
[bedrijfsnaam] => attractie1
[link] => http:
[color] => dd0330
)
[1] => Array
(
[attractie] => attractie1
[start] => 1000
[end] => 1230
[personen] =>
[catering] => 1
[bedrijfsnaam] => Bedrijf2
[link] => http:
[color] => e49fca
)
)
[52] => Array
(
[0] => Array
(
[attractie] => attractie2
[start] => 0930
[end] => 1030
[personen] =>
[catering] => 1
[bedrijfsnaam] => Bedrijf4
[link] => http:
[color] => f7e300
)
[1] => Array
(
[attractie] => attractie2
[start] => 0930
[end] => 1030
[personen] =>
[catering] => 0
[bedrijfsnaam] => bedrijf5
[link] => http:
[color] => f78f1e
)
)
)
所以这就是我的循环:
$i=0;
foreach($slots[$attractieIDs[$i]] as $s){
$myOrders[] = array( 'attractie' => $s['attractie'],
'name' => $s['bedrijfsnaam'],
'start' => $s['start'],
'end' => $s['end'],
'link' => $s['link'],
'personen' => $s['personen'],
'catering' => $s['catering'],
'color' => $s['color'],
);
$i++;
}
attractieID
是一个数组,其中包含ID(41和52)。
当我打印出$myOrders
时,我只能看到ID为41的数组的值,它不会转到带有新ID的下一个数组。
任何人都知道如何解决这个问题?
非常感谢提前!
答案 0 :(得分:1)
您当前的代码会将41和52中的条目合并为一个数组,您将无法分辨哪个是哪个。
{{1}}
答案 1 :(得分:1)
答案 2 :(得分:0)
试试这个循环:
foreach($slots as $outer_arr){
foreach($outer_arr as $s) {
$myOrders[] = array( 'attractie' => $s['attractie'],
'name' => $s['bedrijfsnaam'],
'start' => $s['start'],
'end' => $s['end'],
'link' => $s['link'],
'personen' => $s['personen'],
'catering' => $s['catering'],
'color' => $s['color'],
);
}
}
但仍然不清楚你想要的输出。
答案 3 :(得分:0)
试试这个。无论你有什么索引,这个循环都会在你的数组中输出任何值。
<?php
$test = array(
'41' => array(
array('attractie' => 'attractie1',
'start' => '0930',
'end' => '1200',
'personen' => NULL,
'catering' => '1',
'bedrijfsnaam' => 'attractie1',
'link' => 'http:',
'color' =>'dd0330'),
array('attractie' => 'attractie1',
'start' => '1000',
'end' => '1230',
'personen' => NULL,
'catering' => '1',
'bedrijfsnaam' => 'Bedrijf2',
'link' => 'http:',
'color' =>'e49fca'),
),
'51' => array(
array('attractie' => 'attractie2',
'start' => '0930',
'end' => '1030',
'personen' => NULL,
'catering' => '1',
'bedrijfsnaam' => 'Bedrijf4',
'link' => 'http:',
'color' =>'f7e300'),
array('attractie' => 'attractie2',
'start' => '0930',
'end' => '1030',
'personen' => NULL,
'catering' => '0',
'bedrijfsnaam' => 'bedrijf5',
'link' => 'http:',
'color' =>'f78f1e'),
)
);
foreach ($test as $a => $val) {
echo "<b>Index $a</b><br><br>";
foreach ($val as $b) {
foreach ($b as $key => $value) {
echo "<b>$key</b> - $value<br>";
}
}
echo "<br><br>";
}
?>
<强>输出:强>
Index 41
attractie - attractie1
start - 0930
end - 1200
personen -
catering - 1
bedrijfsnaam - attractie1
link - http:
color - dd0330
attractie - attractie1
start - 1000
end - 1230
personen -
catering - 1
bedrijfsnaam - Bedrijf2
link - http:
color - e49fca
Index 51
attractie - attractie2
start - 0930
end - 1030
personen -
catering - 1
bedrijfsnaam - Bedrijf4
link - http:
color - f7e300
attractie - attractie2
start - 0930
end - 1030
personen -
catering - 0
bedrijfsnaam - bedrijf5
link - http:
color - f78f1e