如何根据PHP变量中包含的值应用CSS类?

时间:2013-07-27 08:45:46

标签: php html css

我正在使用PHP,MySQL,HTML和CSS。根据我的PHP变量中的值,我想将CSS类应用于

  • 元素。我该怎么做?我的PHP和HTMl(
  • 元素)的代码片段如下:

    <?php
    $e=$_POST['users']; //$e should have either employee_id or a string "All"
    ?>
    <li><p align="center"><a href="salary_report.php">Salary Report(Individual)</a></p></li>
          <li><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    

    现在的情况是,如果$ e ==“全部”,那么我必须将CSS类“class =”active“应用于以下

  • <li><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    

    如果没有,则将相同的CSS类应用于另一个

  • <li><p align="center"><a href="salary_report.php">Salary Report(Individual)</a></p></li>
    

    我的问题是我应该如何根据PHP变量使用条件并将特定类应用于HTML元素?谁可以在这方面帮助我?提前谢谢。

  • 6 个答案:

    答案 0 :(得分:7)

    尝试使用ternary operator之类的

    <li class="<?php echo $e == "All" ? 'active' : ''; ?>><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    

    答案 1 :(得分:4)

    您可以通过以下代码来完成。

    <?php 
    if($e=="All")
    {
    ?>
    <li class="active"><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    <?php
    }else{
    ?>
    <li class="active"><p align="center"><a href="salary_report.php">Salary Report(Individual)</a></p></li>
    <?php
    }
    ?>
    

    答案 2 :(得分:3)

    你可以这样做:

    <li class="<?php echo $e == "all" ? 'active' : ''; ?>><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    

    答案 3 :(得分:3)

    我不明白为什么没有人说第二个<li>。只需翻转语句即可生成另一个<li>“活动”

    <?php
    $e=$_POST['users']; 
    ?>
    <li<?=($e=='All'?'':' class="active"')?>><p align="center"><a href="salary_report.php">Salary Report(Individual)</a></p></li>
    <li<?=($e=='All'?' class="active"':'')?>><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    

    答案 4 :(得分:2)

    <li class="<?php echo $e == "All" ? 'active' : ''; ?>><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>
    

    答案 5 :(得分:1)

    你也可以采用这种方式..这是为了更好地理解那里正在做的事情。

    <?php
    $data = ($e == "All") ? 'active' : ''; 
    ?>
    
    <li class="<?php echo $data; ?>"><p align="center"><a href="salary_report_combined.php">Salary Report(Combined)</a></p></li>