【发布时间】:2021-07-24 14:03:13
【问题描述】:
虽然此代码似乎可以按照 td 行的预期更改 $tdstyle,但它不会根据 esleif 条件适当地更新 $font 和 $text。即使不是真的,它似乎总是仅根据 else 条件来保持这些字符串相同。也许只是语法问题?我确信有更好的方法可以做到这一点,但我有限的知识使我走到了这一步。有什么建议吗?
<?php
$num = (float)$uvindex;
if($num >10) {
$tdstyle='#B567A4';
$font='white';
$text='Extreme';
} elseif($num >=8) {
$tdstyle='#E53210';
$font='white';
$text='Very High';
} elseif($num >=6) {
$tdstyle='#F18B00';
$font='black';
$text='High';
} elseif($num >=3) {
$tdstyle='#FFF300';
$font='black';
$text='Moderate';
} else $tdstyle='#3EA72D'; $font='black'; $text='Low';
?>
<td height="82" colspan="2" align="center" valign="middle" class="data1" style="text-align:center; background-color:<?php echo $tdstyle ?>; color:<?php echo $font ?>; border: 3px solid black; border-radius: 7px; font-size:12px;">
【问题讨论】:
-
您需要将所有
else语句放在{}中以将它们放在一起,否则$font和$text将始终从那里设置。 -
如果您查看 PSR-12 之类的关于缩进的内容,它将有助于纯粹通过代码的布局来查看此类问题。
标签: php html string if-statement conditional-statements