Php 检查foreach语句值
我有这样的代码Php 检查foreach语句值,php,mysql,if-statement,drop-down-menu,foreach,Php,Mysql,If Statement,Drop Down Menu,Foreach,我有这样的代码 <ul> <?php foreach (getUserMainMenus($get_user_id) as $get_main_menu): ?> <li class='has-sub'><a href='#'><span><?=$get_main_menu['menu_name']; ?></span></a> <ul> <?
<ul>
<?php foreach (getUserMainMenus($get_user_id) as $get_main_menu): ?>
<li class='has-sub'><a href='#'><span><?=$get_main_menu['menu_name']; ?></span></a>
<ul>
<?php foreach (getUserChildMenu($get_main_menu['m_id'], $get_user_id) as $sub_menu): ?>
<li class='has-sub'><a href='<?=$sub_menu['menu_url']; ?>'><span><?=$sub_menu['menu_name']; ?></span></a>
<ul>
<?php foreach (getUserSubChildMenu($sub_menu['m_id'], $get_user_id) as $sub_sub_menu): ?>
<li class='has-sub'><a href='<?=$sub_sub_menu['menu_url']; ?>'><span><?=$sub_sub_menu['menu_name']; ?></span></a></li>
<?php endforeach; ?>
</ul>
</li>
<?php endforeach; ?>
</ul>
</li>
<?php endforeach; ?>
</ul>
Array ( [m_id] => 9 [menu_name] => MenuName [parent_menu_id] => 4 [menu_order] => 1 [menu_url] => menu1.php [status] => 1 )
如何在所有foreach语句之后检查if条件。
换句话说,我需要获取$sub_菜单值,如果有值,则显示li标记。
另外-我需要检查$sub_sub_菜单变量,如果有值,则显示li标记
我怎样才能做到这一点
谢谢,
Kimz我想您应该尝试创建一个导航菜单。其中,子条目只应在页面访问者选择顶部菜单项时出现 是这样吗 好的。你可能已经想到了
<?php
$menu="";
extract( $_GET, EXTR_PREFIX_ALL, "url" );
if (isset($url_menu)){
$menu=$url_menu;
echo "you selected ".$menu."<br>";
}
echo "<ul>";
// top menu 1
echo '<li><a href="./test.php?menu=top1">Top1</a>';
if ($menu=="top1"){
echo "<ul>";
echo "<li>Submenu</li>";
echo "</ul>";
}
echo "</li>";
// top menu 2
echo '<li><a href="./test.php?menu=top2">Top2</a>';
if ($menu=="top2"){
echo "<ul>";
echo "<li>Submenu</li>";
echo "</ul>";
}
echo "</li>";
echo "</ul>";
?>
查看任何顶部菜单项,将其交给附加变量“menu”。在本例中,这是“top1”或“top2”。现在,重新加载脚本将检查“菜单”是否已设置,并根据“菜单”的值显示相应的子菜单
还有很长的路要走,因为在我的例子中,我使用固定的菜单项,在你的例子中,你根据“userid”加载菜单项
让我知道上述示例是否适用于您的位置,以及您是否需要额外的支持以将其应用于动态加载的菜单
按照这个想法,你需要替换
<li class='has-sub'><a href='#'><span><?=$get_main_menu['menu_name']; ?></span></a>
例如,通过添加变量名“level0”
然后,如果“level0”按预期设置,您可以在子菜单中进行检查,然后显示或隐藏子菜单项。为什么将其作为答案发布?一条评论就足够了。对不起,我的声誉不足以只发表评论。我一开始就想发表评论。那么你能收回你的-1吗?>>你必须有50个名声才能评论出什么事来?你不喜欢我的主意吗?
<li class='has-sub'><a href='<?= ?level0=$sub_menu['menu_name']; ?>'><span><? $get_main_menu['menu_name']; ?></span></a>