可能是一个愚蠢的问题,但是如何最好地处理由 PHP 中的 if 语句创建的变量?
因此,下面的代码可以工作,但如果我将数字 10 更改为 30,则 if 语句将为 false,并且 $class 将未定义,这将引发错误。
处理这个问题的最佳方法是什么?我应该在 if 语句之前将 $class 定义为 null 吗?
if( 10 < 20 ) {
$class = 'less';
}
echo '<div class="number ' . $class . '">10</div>';
最佳答案
您可以使用 ternary operation这里结合empty()
:
if( 10 < 20 ) {
$class = 'less';
}
echo '<div class="number ' . (!empty($class) ? $class : '') . '">10</div>';
请注意,虽然最好在使用之前检查某些内容是否存在,但您当前的代码没有问题。 PHP 会抛出有关使用未定义索引的通知,但不会出现 fatal error 。
但是,我仍然建议使用 empty()
进行检查 - 最好有 PHP 不会抛出错误/通知的完美代码。
关于php - 处理 if 语句中的变量 - PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58319669/