我无法弄清楚如何过滤/排序这些数组,然后显示第1部分,然后是第1部分的所有子部分(1,2,3,...),而不是第1部分重复。如何用PHP中的子节过滤掉数组的各个部分?
接下来,它将循环到第2部分,然后循环到第2部分的所有子部分(1,2,3,...),而不会重复第2部分。
必须有一个if语句或某些内容来帮助防止每个子节显示节。
SELECT section, subsection
FROM table
WHERE id = :id
ORDER BY section, subsection
输出部,= 1
然后只显示部1 = 1,2,3
然后输出节的小节= 2
然后仅显示的第第2部分= 1,2,3,4
阵列输出的样本
Array
(
[0] => Array
(
section, => 1
[0] => 1
subsection=> 1
[1] => 1
)
[1] => Array
(
section, => 1
[0] => 1
subsection=> 2
[1] => 2
)
)
我是想这样的循环,但无法弄清楚如何从复制停止部分:
<?php
echo "<div class='panel panel-default'>";
$numrows = count($tabs);
for ($i =0; $i < $numrows; $i++){
$sectionnumrows = count($tabs[$i]['section']);
echo $tabs[$i]['section'].","; // don't want this to repeat, only show once
for ($j=0; $j < $sectionnumrows; $j++){
$subsectionnumrows = count($tabs[$i]['subsection']);
for ($k=0; $k < $sectionnumrows; $k++){
if([$i]['section'] == $j){
echo "subsection ".$tabs[$i]['subsection']."<br>";
}
}
}
}
echo "</div>";
与测试这个唯一的问题是,这种方法终止在第1节。 – Sol
@ user7480839由于您只有2个部分,因此将循环中的
Mihai
将会有一些部分包含3个或更多部分......我会尝试一下。 :) – Sol