HTMLで出力される文字色を、$_GET変数の値によって変更したい。


HTML+CSSおよびphpの初心者です。  
$_GET変数で得た値が1であれば１の部分を赤色に、  
2であれば2の部分を赤色に、3であれば3の部分を赤色に変更したいと思っております。  
詳しい方、ご教示ください。

index.php  

[code]

    <?php
    
    $number = $_GET['id'];
    
    print '<ul>';
    print '<li class="light">1</li>';
    print '<li>2</li>';
    print '<li>3</li>';
    print '</ul>';
    
    ?>
    
[/code]

index.css  

[code]

    .light{
        color: #ff0000;
    }
    
[/code]

[![結果](https://i.stack.imgur.com/liQcR.png)](https://i.stack.imgur.com/liQcR.png)




正直色々なやり方が考えられますが、愚直にやると次のような感じになるかと思います。

[code]

    <?php
    $number = $_GET['id'];
    
    echo '<ul>';
    for ($index = 1; $index <= 3; $index++) {
        echo '<li' , ($index == $number ? ' class="light">' : '>') , $index , '</li>'; 
    }
    echo '</ul>';
    
[/code]

[三項演算子](http://php.net/manual/ja/language.operators.comparison.php)
を使って、for文のループ番号 `$index` と `$number` を比較して一致したときのみ `class="light"`
が出力されるようになっています。

