内联PHP中的空变量

时间:2015-02-11 21:44:40

标签: php

我无法使用内联PHP验证变量是否为空。我目前有以下代码:

<li>Nano: <?php if($Info['Nano'] == true): echo $Info['Nano']; else: echo $noRecords; endif; ?></li>

设置$Info['Nano']时这一切都很好,当它不存在时我得到了存储在$ noRecords中的字符串,但我也得到了一个未定义的索引通知。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

您可以检查是否已设置( isset() ):

<li>Nano: <?php if(isset($Info['Nano']) && $Info['Nano'] == true): 
                   echo $Info['Nano'];
                else: 
                   echo $noRecords;
                endif; ?></li>

答案 1 :(得分:2)

你可以简单地添加一个AND语句来检查它是否已设置,如下所示:

<li>Nano: <?php if(isset($Info['Nano']) && $Info['Nano'] == true): echo $Info['Nano']; else: echo $noRecords; endif; ?></li>

如果你想要你也可以使用三元运算符,这样整条线就会小一些:

<li>Nano: <?= (isset($Info['Nano']) && $Info['Nano'] == true)? $Info['Nano'] : $noRecords ?></li>