1

我在 HTML 中的示例:

<div id="red-nav-warp">
  <ul id="red-nav-logo">
    <li><img class="sponsors" id="sponsorone" src="media/img/logosmall.png" /></li>
  </ul>
  <ul class="clearfix" id="red-nav-list-member" >
    <li><?php $themeSys->Href('logout',$langSys->get('LOGOUT')); ?></li>
    <li><?php $themeSys->Href('settings',$langSys->get('SETTINGS')); ?></li>
  </ul>    
  <ul class="clearfix" id="red-nav-list" >
    <li><?php $themeSys->Href('home',$langSys->get('HOME')); ?></li>
    <li><?php $themeSys->Href('why',$langSys->get('WHY')); ?></li>
    <li><?php $themeSys->Href('register',$langSys->get('REGISTER')); ?></a></li>
    <li><?php $themeSys->Href('account',$langSys->get('MEMBER')); ?></a></li>
    <li><?php $themeSys->Href('community',$langSys->get('COMMUNITY')); ?></a></li>
    <li><?php $themeSys->Href('blog',$langSys->get('BLOG')); ?></a></li>
    <li><?php $themeSys->Href('partners',$langSys->get('PARTNERS')); ?></a></li>
  </ul> 

  <div class="clearfix"></div>    
</div><!-- END red-nav-warp -->

如果他是登录用户,我只想显示 HTML 的一部分。

<div id="red-nav-warp">
  <ul id="red-nav-logo">
    <li><img class="sponsors" id="sponsorone" src="media/img/logosmall.png" /></li>
  </ul>

  <!-- hidden or no output -->  
  <ul class="clearfix" id="red-nav-list" >
    <li><?php $themeSys->Href('home',$langSys->get('HOME')); ?></li>
    <li><?php $themeSys->Href('why',$langSys->get('WHY')); ?></li>
    <li><?php $themeSys->Href('register',$langSys->get('REGISTER')); ?></a></li>
    <li><?php $themeSys->Href('account',$langSys->get('MEMBER')); ?></a></li>
    <li><?php $themeSys->Href('community',$langSys->get('COMMUNITY')); ?></a></li>
    <li><?php $themeSys->Href('blog',$langSys->get('BLOG')); ?></a></li>
    <li><?php $themeSys->Href('partners',$langSys->get('PARTNERS')); ?></a></li>
  </ul> 

  <div class="clearfix"></div>    
</div><!-- END red-nav-warp -->

任何人都有一个想法或一个可以隐藏东西的示例类,这样我就可以像这样写(如果可能的话,最好是一个类。)

<div id="red-nav-warp">
  <ul id="red-nav-logo">
    <li><img class="sponsors" id="sponsorone" src="media/img/logosmall.png" /></li>
   </ul>
   <?php $hideSys->hiddenbelow(); ?> <!-- some hide class or some magic -->
   <ul class="clearfix" id="red-nav-list-member" >
     <li><?php $themeSys->Href('logout',$langSys->get('LOGOUT')); ?></li>
     <li><?php $themeSys->Href('settings',$langSys->get('SETTINGS')); ?></li>
   </ul>
   <?php $hideSys->stop(); ?> <!-- end some hide class or some magic -->   
   <ul class="clearfix" id="red-nav-list" >
     <li><?php $themeSys->Href('home',$langSys->get('HOME')); ?></li>
     <li><?php $themeSys->Href('why',$langSys->get('WHY')); ?></li>
     <li><?php $themeSys->Href('register',$langSys->get('REGISTER')); ?></a></li>
     <li><?php $themeSys->Href('account',$langSys->get('MEMBER')); ?></a></li>
     <li><?php $themeSys->Href('community',$langSys->get('COMMUNITY')); ?></a></li>
     <li><?php $themeSys->Href('blog',$langSys->get('BLOG')); ?></a></li>
     <li><?php $themeSys->Href('partners',$langSys->get('PARTNERS')); ?></a></li>
   </ul> 

   <div class="clearfix"></div>    
</div><!-- END red-nav-warp -->

我所做的,是的,我知道这是一个史诗般的失败,至少我正在尝试:)

<?php  
/**
* TRYING TO HIDE SOME PART OF HTML
* useing if $_Session['login'] = true;
*/
class Hideing
{
  function __construct()
  {

  }

  function hiddenbelow()
  {
    return "if($_Session['login']){"; // epic fail
  }

  function stop()
  {
    return "}";
  }
}

$hideSys = new Hideing;
?>

谢谢关注,

亚当斋月

4

2 回答 2

1

您的代码只返回一个字符串。PHP 不会自动执行它。

你需要做

 </ul>
 <?php if($_Session['login']) { ?> <!-- some hide class or some magic -->
 <ul class="clearfix" id="red-nav-list-member" >
  <li><?php $themeSys->Href('logout',$langSys->get('LOGOUT')); ?></li>
  <li><?php $themeSys->Href('settings',$langSys->get('SETTINGS')); ?></li>
 </ul>
 <?php } ?> <!-- end some hide class or some magic -->   
 <ul class="clearfix" id="red-nav-list" >

您可能已经阅读过分离模型视图和控制器逻辑的智慧,并希望将该逻辑封装到一个类中,但您仍然需要在 PHP 代码中使用 ifs。

 </ul>
 <?php if($hideSys->isLoggedIn()) { ?> <!-- some hide class or some magic -->
 <ul class="clearfix" id="red-nav-list-member" >
  <li><?php $themeSys->Href('logout',$langSys->get('LOGOUT')); ?></li>
  <li><?php $themeSys->Href('settings',$langSys->get('SETTINGS')); ?></li>
 </ul>
 <?php } ?> <!-- end some hide class or some magic -->   
 <ul class="clearfix" id="red-nav-list" >

isLoggedIn() 方法返回一个布尔值 true 或 false 变量。

于 2010-07-24T12:49:26.077 回答
0

包装你想隐藏的代码:

<?php if ($_SESSION['login']): ?>
<!-- code goes here -->
<?php endif; ?>
于 2010-07-24T12:48:07.400 回答