我在config.php文件中声明了两个全局变量,我想根据另一个页面的结果调用其中一个但是我需要一些语法帮助。
只需在按钮(btn-success
或btn-default
)
的config.php
define("BTN_SUCCESS", "btn-success");
define("BTN_DEFAULT", "btn-default");
我想做类似以下的事情,但它不起作用它只是打印出我的html源代码中的名字;
echo '<td>
<button id="fav" type="button" class="btn '.BTN_SUCCESS. || 'BTN_DEFAULT''"></button>
</td>';
如果我单独插入其中任何一个,它们都可以工作,但这不是我想要的,例如;
echo '<td>
<button id="fav" type="button" class="btn '.BTN_SUCCESS.'"></button>
</td>';
我想要一个或运营商 - 这可能吗?这可能很简单。相当新的PHP所以任何帮助表示赞赏。
答案 0 :(得分:5)
您需要先根据值设置类,然后回显该类。
<?php
$class = $somethingIsTrue ? BTN_SUCCESS : BTN_DEFAULT;
?>
echo '<td>
<button id="fav" type="button" class="btn '.$class.'"></button>
</td>';
答案 1 :(得分:2)
试试这个
echo '<td>
<button id="fav" type="button" class="btn '.(BTN_SUCCESS?:BTN_DEFAULT).'"></button>
</td>';
括号是
的简写if(BTN_SUCCESS)
echo BTN_SUCCESS;
else
echo BTN_DEFAULT;
可以使用ternary operators缩短上述if条件:
echo BTN_SUCCESS ? BTN_SUCCESS : BTN_DEFAULT;
如果你想回应条件的值(在这种情况下是BTN_SUCCESS
),如果它是真实的你可以通过删除中间部分来缩短它(从PHP 5.3开始):< / p>
echo BTN_SUCCESS ?: BTN_DEFAULT;