Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用PHP从活动导航页面中删除锚?_Php - Fatal编程技术网

如何使用PHP从活动导航页面中删除锚?

如何使用PHP从活动导航页面中删除锚?,php,Php,我相信这是一个非常简单的问题,但我对PHP还不熟悉,所以我希望有人能帮我解决这个问题 我有一个动态导航菜单,工作得非常好,但我想删除菜单中当前页面的链接 这是我的密码: <div id="navigation_menu"> <? foreach($pagedata->menu as $menuitem){ $class = ($menuitem->uri == $requesteduri) ? 'navigation selection' :

我相信这是一个非常简单的问题,但我对PHP还不熟悉,所以我希望有人能帮我解决这个问题

我有一个动态导航菜单,工作得非常好,但我想删除菜单中当前页面的链接

这是我的密码:

  <div id="navigation_menu">
  <?
  foreach($pagedata->menu as $menuitem){
      $class = ($menuitem->uri == $requesteduri) ? 'navigation selection' : 'navigation page_select';

      ?>
      <div id="<?=$menuitem->uri?>" class="<?=$class?>">
        <img class="nav_icon" src="<?=PROTOCOL?>//<?=DOMAIN?>/img/<?=$menuitem->uri?>.png">
        <h1><a href="<?=PROTOCOL?>//<?=DOMAIN?>/<?=$menuitem->uri?>"><?=$menuitem->title?></a></h1>
        <h2><?=$menuitem->description?></h2>
        <img class="go" src="<?=PROTOCOL?>//<?=DOMAIN?>/img/go.png">
      </div>
      <?      
  }
  ?>
  </div>


我不知道您的循环输出的是什么,但您希望将页面名称与menuitem->uri匹配。所以你会得到你的页面名,比如。。(把这个放在循环之外)


找出循环输出的内容(将其放入循环中):


然后创建一个if语句来比较循环中的当前menuitem和页面请求,这只是一个示例:

<h1>
<?php if (base_name($_SERVER['REQUEST_URI']) == $menuitem->uri):?>
   <a href="<?=PROTOCOL?>//<?=DOMAIN?>/<?=$menuitem->uri?>"><?=$menuitem->title?></a>
<?php else: ?>
   <?=$menuitem->title;?>
<?php endif;?>
</h1>


在锚文本周围放置一个条件,查看
$menuitem->uri
是否等于当前页面URL,在输出锚标记之前可以从`$\u服务器['REQUEST\u uri']访问该URL。

好的,我想我知道你在做什么,但这如何删除锚标记?我在学习…好吧,这很有效。。。但是由于某些原因,我的导航按钮链接路径出现“未定义”,而不是uri应该显示的名称。好的,我已经用代码更新了我的原始帖子,达到了我想要的结果。但是,if/else函数是反向的。它们应该是相反的。
<?php echo base_name($_SERVER['REQUEST_URI']); ?>
<?php echo $menuitem->uri; ?>
<h1>
<?php if (base_name($_SERVER['REQUEST_URI']) == $menuitem->uri):?>
   <a href="<?=PROTOCOL?>//<?=DOMAIN?>/<?=$menuitem->uri?>"><?=$menuitem->title?></a>
<?php else: ?>
   <?=$menuitem->title;?>
<?php endif;?>
</h1>