【问题标题】:For loop using php with htmlFor 循环使用 php 和 html
【发布时间】:2014-01-16 07:04:33
【问题描述】:

请帮忙,我正在弄清楚如何循环这个特定的 html 和 php 代码。我这里有货。

for($x=1; $x<=10; $x++)
{
<li  <?php if (strpos($_SERVER['PHP_SELF'], $navserver[$x])) 
echo 'class="active"';?>><?     php echo '<a href="'.$navlink[$x].'">',
$navdesc[$x] ?></a></li>
}

【问题讨论】:

    标签: php mysql html content-management-system


    【解决方案1】:

    试试这个

    <?php for($x=1; $x<=10; $x++) : ?>
        <li <?php if (strpos($_SERVER['PHP_SELF'], $navserver[$x])) echo 'class="active"';?>>
            <?php echo '<a href="'.$navlink[$x].'">' . $navdesc[$x] . '</a>'; ?>
        </li>
    <?php endfor; ?>
    

    一些错误编写的 php 代码。您可以阅读此 echo 手册以了解更多信息http://bd1.php.net/echo

    【讨论】:

    • 欢迎,如果它有效,你可以接受这个答案或任何其他正确的答案。
    • @crack,strpos 可能返回 0 在这种情况下它不会回显类活动
    • 其实我不知道这个脚本的业务逻辑,所以如果 strpos 返回零那么这个 class="active"0 不会打印。可能是预期的结果。 @raj
    • @crack,是的。可能是一个错误
    • @crack 是的,它会打印一个空白,没有类。 :)
    【解决方案2】:

    希望这会有所帮助:

    <?php 
    for($x=1; $x<=10; $x++){ 
    ?>
    <li    
       <?php 
         if (strpos($_SERVER['PHP_SELF'], $navserver[$x])) {  echo 'class="active"'; }
       ?>
    >
       <a href="<?php echo $navlink[$x];?> "><?php echo $navdesc[$x] ?></a>
    
    </li>
    
    <?php } ?> 
    

    你有错误的 php 语法,在 php 标签内有不需要的 html。

    现在代码已清理完毕。

    【讨论】:

      【解决方案3】:

      你可以试试这个,

          for($x=1; $x<=10; $x++)
          {
              $Active ="";
              if(strpos($_SERVER['PHP_SELF'], $navserver[$x])){
                  $Active = 'class="active"';
              }
               echo '<li  '.$Active.'> <a href="'.$navlink[$x].'">',$navdesc[$x].'</a></li>';
          }
      

      【讨论】:

        【解决方案4】:

        试试这个会让你更轻松

        <?php
        for($x=1; $x<=10; $x++)
        {
            $class_text = "";
            if(strpos($_SERVER['PHP_SELF'], $navserver[$x]))
            {
                $class_text = 'class="active"';
            }
        
        ?>
            <li <?php echo $class_text;?>><a href="<?php echo $navlink[$x];?>" ><?php echo $navdesc[$x];?></a></li>
        <?php
        }
        ?>
        

        更新:2 或者使用也可以使用下面的代码

        <?php
        for($x=1; $x<=10; $x++)
        {
            $class_text = "";
            if(strpos($_SERVER['PHP_SELF'], $navserver[$x]))
            {
                $class_text = 'class="active"';
            }
            echo '<li '.$class_text.'><a href="'.$navlink[$x].'" >'.$navdesc[$x].'</a></li>';
        }
        ?>
        

        【讨论】:

          猜你喜欢
          • 2017-10-30
          • 1970-01-01
          • 2015-02-15
          • 2016-10-16
          • 1970-01-01
          • 1970-01-01
          • 2022-10-04
          • 1970-01-01
          • 2016-05-08
          相关资源
          最近更新 更多