Php 如果是类内属性html

Php 如果是类内属性html,php,css,codeigniter,Php,Css,Codeigniter,导航 <li> <a href="<?=base_url();?>backend/Administrator" class="<?php ($_SERVER['REQUEST_URI']) ? 'class="waves-effect active"' : 'class="waves-effect"'; ?>"><i class="zmdi zmdi-view-dashboard"></i>

导航

    <li>
      <a href="<?=base_url();?>backend/Administrator"
        class="<?php ($_SERVER['REQUEST_URI']) ? 'class="waves-effect active"' : 'class="waves-effect"'; ?>"><i class="zmdi zmdi-view-dashboard"></i> <span> Home </span> </a>
    </li>

    <li>
      <a href="<?=base_url();?>backend/Item" class="waves-effect"><i class="zmdi zmdi-view-list-alt"></i> <span> Item Management </span> </a>
    </li>

    <li>
      <a href="<?=base_url();?>backend/Item/tag" class="waves-effect"><i class="zmdi zmdi-collection-plus"></i> <span> Category Management </span> </a>
    </li>

    <li>
      <a href="<?=base_url();?>backend/User" class="waves-effect"><i class="zmdi zmdi-account-o"></i> <span> User Management </span> </a>
    </li>

    <li>
      <a href="<?=base_url();?>backend/Transaksi" class="waves-effect"><i class="fa fa-exchange"></i> <span> Transactions </span> </a>
    </li>

    <li>
      <a href="<?=base_url();?>backend/Transaksi/report" class="waves-effect"><i class="zmdi zmdi-comment-more"></i> <span> Report </span> </a>
    </li>
  </ul>
  • 我在课堂上使用if,但它不起作用。
    如果URL处于活动状态,则使用类
    waves effect active
    。如果未激活,则使用类
    波浪效果


    请帮助我解决任何问题。

    您需要
    回显
    值并删除
    类=
    部分,如果您不想重复该部分,则需要执行该操作

    <li>
      <a href="<?=base_url();?>backend/Administrator"
        class="<?php ($_SERVER['REQUEST_URI']) ? echo 'waves-effect active' : echo 'waves-effect'; ?>"><i class="zmdi zmdi-view-dashboard"></i> <span> Home </span> </a>
    </li>
    

  • 因为class属性重复,并且缺少一些回显

    替换:

    class="<?php ($_SERVER['REQUEST_URI']) ? 'class="waves-effect active"' : 'class="waves-effect"'; ?>"
    
    class=“”
    
    与:

    class=“”
    
    或:


    您拥有的$\u服务器['REQUEST\u URI']可能永远存在,因此您的测试总是会得出您的值的真实值

    你想要更像这样的东西吗

    <li>
        <a href="<?= base_url(); ?>backend/Administrator"
           class="<?= ($_SERVER['REQUEST_URI'] != '/home/') ? 'waves-effect active' : 'waves-effect'; ?>">
           <i class="zmdi zmdi-view-dashboard"></i> <span> Home </span>
        </a>
    </li>
    

    您只需使用
    回显“字符串”即可。您可以使用CodeIgniter URI类和URL帮助器使事情更清晰、更简单:

    <?php
    
    $this->load->helper('url');
    
    $links = [
       [
            'uriStr' => 'backend/administrator',
            'text'   => 'Home',
            'icon'   => 'zmdi zmdi-view-dashboard', 
       ],
       [
            'uriStr' => 'backend/item',
            'text'   => 'Item Management',
            'icon'   => 'zmdi zmdi-view-list-al', 
       ],
       [
            'uriStr' => 'backend/item/tag',
            'text'   => 'Category Management',
            'icon'   => 'zmdi zmdi-collection-plus', 
       ],
       [
            'uriStr' => 'backend/user',
            'text'   => 'User Management',
            'icon'   => 'zmdi zmdi-account-o', 
       ],
       [
            'uriStr' => 'backend/transaksi',
            'text'   => 'Transactions',
            'icon'   => 'fa fa-exchange', 
       ],
       [
            'uriStr' => 'backend/transaksi/report',
            'text'   => 'Report',
            'icon'   => 'zmdi zmdi-comment-more', 
       ],
    ];
    
    foreach( $links as $link )
    {
        $icon = '<i class="' . $link['icon'] . '"></i>';
    
        $class = $this->uri->uri_string() == $link['uriStr']
            ? 'waves-effect active'
            : 'waves-effect';
    
        echo '<li>' . 
            anchor( $link['uriStr'], $icon . ' <span> ' . $link['text'] . ' </span> ', 'class="' . $class . '"' ) . 
        '</li>' . 
        PHP_EOL;
    }
    

    echo
    放在输出之前
    <li>
        <a href="<?= base_url(); ?>backend/Administrator"
           class="<?= ($_SERVER['REQUEST_URI'] != '/home/') ? 'waves-effect active' : 'waves-effect'; ?>">
           <i class="zmdi zmdi-view-dashboard"></i> <span> Home </span>
        </a>
    </li>
    
    $_SERVER['REQUEST_URI'] != '/home/'
    
    <?= ($_SERVER['REQUEST_URI'] != '/home/') ? 'waves-effect active' : 'waves-effect'; ?>
    
    trim($_SERVER['REQUEST_URI'],'/') =='home'
    
    class="waves-effect<?= (trim($_SERVER['REQUEST_URI'],'/') =='home') ? ' active' : ''; ?>">
    
    class="waves-effect <?= (trim($_SERVER['REQUEST_URI'],'/') =='home') ? 'active' : ''; ?>">
    
    <?php
    
    $this->load->helper('url');
    
    $links = [
       [
            'uriStr' => 'backend/administrator',
            'text'   => 'Home',
            'icon'   => 'zmdi zmdi-view-dashboard', 
       ],
       [
            'uriStr' => 'backend/item',
            'text'   => 'Item Management',
            'icon'   => 'zmdi zmdi-view-list-al', 
       ],
       [
            'uriStr' => 'backend/item/tag',
            'text'   => 'Category Management',
            'icon'   => 'zmdi zmdi-collection-plus', 
       ],
       [
            'uriStr' => 'backend/user',
            'text'   => 'User Management',
            'icon'   => 'zmdi zmdi-account-o', 
       ],
       [
            'uriStr' => 'backend/transaksi',
            'text'   => 'Transactions',
            'icon'   => 'fa fa-exchange', 
       ],
       [
            'uriStr' => 'backend/transaksi/report',
            'text'   => 'Report',
            'icon'   => 'zmdi zmdi-comment-more', 
       ],
    ];
    
    foreach( $links as $link )
    {
        $icon = '<i class="' . $link['icon'] . '"></i>';
    
        $class = $this->uri->uri_string() == $link['uriStr']
            ? 'waves-effect active'
            : 'waves-effect';
    
        echo '<li>' . 
            anchor( $link['uriStr'], $icon . ' <span> ' . $link['text'] . ' </span> ', 'class="' . $class . '"' ) . 
        '</li>' . 
        PHP_EOL;
    }