我正在尝试循环遍历此数组并相应地回显结果,我的数组此时显示如下:
Array (
[2016 Q1] => 692.00
[2016 Q2] =>
Array (
[0] => 809.00
[1] => 1.00
)
[2016 Q3] =>
Array (
[0] => 290.00
[1] => 8.00
[2] => 2.50
)
)
我需要它来展示这样的东西:
2016 Q1
692.00
2016 Q2
809.00
1.00
2016 Q3
290.00
8.00
2.50
虽然目前显示如下:
2016 Q1
692.00
2016 Q2
Array
2016 Q3
Array
这是我目前的剧本:
$result = array_merge_recursive($quarter_invoice, $quarter_ads, $quarter_account);
foreach ($result as $key => $value){
echo $key.'<br>';
echo $value.'<br>';
}
如何访问要显示的第二批数组?
答案 0 :(得分:1)
只需implode()
他们。 $value
可能是也可能不是数组,因此强制数组使用(array)
:
foreach ($result as $key => $value){
echo $key.'<br>';
echo implode('<br>', (array)$value).'<br>';
}
答案 1 :(得分:0)
您的第一个元素不是数组,而是浮点数/单值。接下来的两个元素都是数组。你需要有更多的一致性。我假设你的第一个元素应该在数组中?像这样?
Array (
[2016 Q1] =>
Array (
[0] => 692.00
)
[2016 Q2] =>
Array (
[0] => 809.00
[1] => 1.00
)
[2016 Q3] =>
Array (
[0] => 290.00
[1] => 8.00
[2] => 2.50
)
)
然后你的脚本看起来像这样
$result = array_merge_recursive($quarter_invoice, $quarter_ads, $quarter_account);
foreach ($result as $key => $value){
echo $key."<br>";
foreach($value as $element){
echo $element."<br>;
}
echo "<br>";
}
如果我错了,你确实需要你提到的确切结构。做这样的事情
$result = array_merge_recursive($quarter_invoice, $quarter_ads, $quarter_account);
foreach ($result as $key => $value){
echo $key."<br>";
if(is_array($value)){
foreach($value as $element){
echo $element."<br>;
}
}else{
echo $value;
}
echo "<br>";
}
这对于输出(可能只是内爆)来说似乎效率低下,但我认为在迭代和操作这些不同类型时,您需要做的不仅仅是输出。