使用PHP循环来减少代码

时间:2011-10-16 13:15:46

标签: php for-loop

我有几个下拉框,我可以从中获得一个类别的ID。例如,从下拉框1,我得到$cat1,从框2我得到$cat2,依此类推。

然后我想从db获取每个cat id的条目。目前我正在为每个变量重复相同的代码,例如:

<?
$cat1 = 1;
$cat2 = 3;
$cat3 = 4;
$cat4 = 8;

<? if ($var1 != ""){ ?> 
    <div>
        Entries for <? echo $var1; ?>           
        ..
    </div>
<? } ?>

<? if ($var2 != ""){ ?> 
    <div>
        Entries for <? echo $var2; ?>
        ..
    </div>
<? } ?>

<? if ($var3 != ""){ ?> 
    <div>
        Entries for <? echo $var3; ?>
        ..
    </div>
<? } ?>

我想知道我是否可以使用循环并避免为每个变量编写代码。

2 个答案:

答案 0 :(得分:4)

尝试

<?
$cats = array(1,3,4,8);
foreach($cats as $value) {
 if($value != "") {
 ?>
   <div>Entries for <?= $value; ?></div>
 <?
 }
}
?>

答案 1 :(得分:2)

使用这样的数组:

$cat[1] = 'bla';
$cat[2] = 'Bla2';

    foreach ($cat as $c){
    if ($c != ""){ 
    echo '
        <div>
            Entries for '. $c.'
            ..
        </div>';
    }

}