<?php if($notification['user_status']==0){?>
<li style="background-color: #edf2fa;">
<?php } else { ?>
<li style="background-color: white;">
<?php } ?>
<a id="notification_list" href="index.php?page=<?php echo $page?>&act=notification">
<?php echo $notefor; ?><small style="color:#AAA; padding-left:10px;">
<?php echo $time_frame;?></small>
</a></li>
第一个if语句可以正常运行,而else则不能运行,有没有办法做类似的事情。
答案 0 :(得分:2)
当然,
但是,请尝试将颜色放在单独的变量中,先执行PHP逻辑,然后再使用该变量一次,而不是重写整个li
:
示例:
<?php
$color = 'white';
if($notification['user_status']==0){
$color = '#edf2fa';
}
?>
<li style="background-color: <?php echo $color; ?>;">
答案 1 :(得分:1)
假设您正在运行php 5.4>
首先,这些代码可以使用一些清理方法。
<?php
if ( $notification['user_status'] == 0 ) {
$backgroundColor = '#edf2fa';
}else {
$backgroundColor = '#FFFFFF';
}
?>
<li style="background-color: <?= $backgroundColor ?>;">
<a id="notification_list" href="index.php?page=<?= $page ?>&act=notification">
<?= $notefor; ?>
<small style="color:#AAA; padding-left:10px;"><?= $time_frame;?></small>
</a>
</li>
else代码块仅在if语句中的表达结果等于false时运行。因此,如果您希望运行else代码,请检查$notification['user_status']
是否实际上不等于0
。
答案 2 :(得分:0)
您可以在类似以下内容的内部使用if语句:
<li style="background-color: <?php ($notification['user_status'] == 0) ? print '#edf2fa' : print 'white' ?>">
<a id="notification_list" href="index.php?page=<?php echo $page ?>&act=notification">
<?php echo $notefor; ?>
<small style="color:#AAA; padding-left:10px;">
<?php echo $time_frame; ?></small>
</a>
</li>