<?php
$array1_1 = array("wzyl" => "1","fbwz" => "0","wzsh" => "0","cgx" => "0");
$array1_2 = array("ygxx"=>"0","ygsh" => "0");
$array1_3 = array("zlxg" => "0","xgmm" => "0");
$array1 = array("wzgl" => $array1_1,"yggl" => $array1_2,"yhgl" => $array1_3);foreach ($array1 as $menuname => $array){
echo "<br>".$menuname."<br>"; foreach ($array as $picname => $picflag){
echo " ". $picname." ".$picflag."<BR>";
}
unset($array); //此处为能显示正确数据而增加,但是仍旧看不到效果
}
$array1_1 = array("wzyl" => "1","fbwz" => "0","wzsh" => "0","cgx" => "0");
$array1_2 = array("ygxx"=>"0","ygsh" => "0");
$array1_3 = array("zlxg" => "0","xgmm" => "0");
$array1 = array("wzgl" => $array1_1,"yggl" => $array1_2,"yhgl" => $array1_3);foreach ($array1 as $menuname => $array){
echo "<br>".$menuname."<br>"; foreach ($array as $picname => $picflag){
echo " ". $picname." ".$picflag."<BR>";
}
unset($array); //此处为能显示正确数据而增加,但是仍旧看不到效果
}
$array1_1 = array("wzyl" => "1","fbwz" => "0","wzsh" => "0","cgx" => "0");
$array1_2 = array("ygxx"=>"0","ygsh" => "0");
$array1_3 = array("zlxg" => "0","xgmm" => "0");
$array1 = array("wzgl" => $array1_1,"yggl" => $array1_2,"yhgl" => $array1_3);foreach ($array1 as $menuname => $array){
echo "$menuname<br>";
foreach ($array as $picname => $picflag){
echo " $picname $picflag<br>";
}
}
?>
wzgl
wzyl 1
fbwz 0
wzsh 0
cgx 0
yggl
ygxx 0
ygsh 0
yhgl
zlxg 0
xgmm 0
第二次循环,把第一次循环时的记录也获得了~~~~
不知道怎么回事,在循环结束时,把该次循环的数组变量删除也不行~~~
foreach,真难搞~
<?php
$array1_1 = array("wzyl" => "1","fbwz" => "0","wzsh" => "0","cgx" => "0");
$array1_2 = array("ygxx"=>"0","ygsh" => "0");
$array1_3 = array("zlxg" => "0","xgmm" => "0");
$array1 = array("wzgl" => $array1_1,"yggl" => $array1_2,"yhgl" => $array1_3);foreach ($array1 as $menuname => $array){
echo "menuname=".$menuname; foreach ($array as $picname => $picflag){
if($picflag=="0"){
$moutpic="2";
$moverpic="1";
}
else{
$moutpic="1";
$moverpic="2";
}
echo "picname=".$picname;
echo "moutpic="$moutpic;
echo "moverpic="$moverpic";
}
unset($array); //此处为能显示正确数据而增加,但是仍旧看不到效果
}
?>
wzgl wzyl12 fbwz21 wzsh21 cgx21
yggl ygxx21 ygsh21
yhgl zlxg21 xgmm21
不要显示
wzgl wzyl12 fbwz21 wzsh21 cgx21
yggl wzyl12 fbwz21 wzsh21 cgx21 ygxx21 ygsh21
yhgl zlxg21 xgmm21 wzyl12 fbwz21 wzsh21 cgx21 ygxx21 ygsh21
wzgl wzyl12 fbwz21 wzsh21 cgx21
yggl wzyl12 fbwz21 wzsh21 cgx21 ygxx21 ygsh21
yhgl zlxg21 xgmm21 wzyl12 fbwz21 wzsh21 cgx21 ygxx21
贴的程序是我删简之后的,具体没有运行过,是不会原原本本显示这些记录
不过输出的值就是 这么一些 ,这点我肯定~我要动态显示三组不同的菜单
但是现在的问题情况是
我要显示的第二组菜单,把第一组菜单也显示出来了,第三组菜单,把前面两组菜单同时显示出来了主要是foreach这边循环的问题
很奇怪,不知道是什么原因
$array1_1 = array("1.1","1.2","1.3","1.4");
$array1_2 = array("2.1","2.2");
$array1_3 = array("3.1","3.2");
$array1 = array("1" => $array1_1,"2" => $array1_2,"3" => $array1_3);foreach ($array1 as $输出1 => $array){
echo $输出1; foreach ($array as $输出2) {
echo $输出2
}
unset($array); //此处为能显示正确数据而增加,但是仍旧看不到效果
}
?>显示的结果$输出1 | $输出2
1 | 1.1 1.2 1.3 1.4
2 | 1.1 1.2 1.3 1.4 2.1 2.2
3 | 1.1 1.2 1.3 1.4 2.1 2.2 3.1 3.2希望显示的结果是
$输出1 | $输出2
1 | 1.1 1.2 1.3 1.4
2 | 2.1 2.2
3 | 3.1 3.2
$array1_1 = array("1.1","1.2","1.3","1.4");
$array1_2 = array("2.1","2.2");
$array1_3 = array("3.1","3.2");
$array1 = array("1" => $array1_1,"2" => $array1_2,"3" => $array1_3);foreach ($array1 as $key1 => $array){
//foreach ($array1 as $输出1 => $array){
echo $key1."|";
//echo $输出1; foreach ($array as $var2 ){
// foreach ($array as $输出2) {
echo " ".$var2;
//echo $输出2 }
echo "<P>";//我加的
unset($array); //此处为能显示正确数据而增加,但是仍旧看不到效果
}
?>
------------------
结果跟你要的一样.1| 1.1 1.2 1.3 1.4
2| 2.1 2.23| 3.1 3.2
$array1_1 = array("wzyl" => "1","fbwz" => "0","wzsh" => "0","cgx" => "0");
$array1_2 = array("ygxx"=>"0","ygsh" => "0");
$array1_3 = array("zlxg" => "0","xgmm" => "0");
$array1 = array("wzgl" => $array1_1,"yggl" => $array1_2,"yhgl" => $array1_3);foreach ($array1 as $menuname => $array){
echo $menuname."<br>"; foreach ($array as $picname => $picflag){
if($picflag=="0"){
$moutpic="2";
$moverpic="1";
}
else{
$moutpic="1";
$moverpic="2";
}
echo ' '.$picname;
echo ' '.$picflag;
echo "<br>";
} echo "<br>";
unset($array); //此处为能显示正确数据而增加,但是仍旧看不到效果
}
?>wzgl
wzyl 1
fbwz 0
wzsh 0
cgx 0yggl
ygxx 0
ygsh 0yhgl
zlxg 0
xgmm 0
<?php$array1_1 = array("wzyl" => "1","fbwz" => "0","cgx"=>"0","fjx" => "0","wzsh" => "0");
$array1_2 = array("ygxx" =>"0","ygsh" => "0");
$array1_3 = array("zlxg" => "0","xgmm" => "0","xtbz" => "0","tcxt" => "0");
$array1 = array("wzgl" => $array1_1,"yggl" => $array1_2,"yhgl" => $array1_3);require "../commonfunction/template.inc";
$tpl_left = new Template("../body","keep");
$tpl_left -> set_file("left","left.tpl");$tpl_left -> set_block("left","row1","row1s");
$tpl_left -> set_block("row1","row1_1","row1_1s"); foreach ($array1 as $menuname => $array){ $tpl_left -> set_var("row1_1s"); //这里漏写了,所以才会出现多重循环重复
foreach ($array as $picname => $picflag){
if($picflag=="0"){
$moutpic="2";
$moverpic="1";
}
else{
$moutpic="1";
$moverpic="1";
}
if($styleflag=="y"){
if($moutpic==$moverpic){
$moutpic="2";
$moverpic="2";
}
$t=$moutpic;
$moutpic=$moverpic;
$moverpic=$t;
}
$tpl_left -> set_var("picname",$picname);
$tpl_left -> set_var("styleflag",$styleflag);
$tpl_left -> set_var("moutpic",$moutpic);
$tpl_left -> set_var("moverpic",$moverpic);
$tpl_left -> parse("row1_1s","row1_1","true");
}
$tpl_left -> set_var("menuname",$menuname); $tpl_left -> parse("row1s","row1","true");
}
$tpl_left -> parse("leftout","left");
$tpl_left -> p("leftout");
?>非常感谢大家帮忙测试~