我已将一个名为$items
的数组传递给我的视图以便打印它。看看:
<?php echo "<br>First print: " . $items;
if ($items != null):
echo "<br>Second print: " . $items;
php endif;?>
最终输出是:
首先打印:数组
如您所见,$items
不为空,但是,永远不会打印第二条消息。我的服务器有问题吗?
修改:
我可以使用空函数评估$items
,但我需要使用null comparator
对其进行评估,因为此变量可以为null。
编辑2:
传递给视图时,$items
可以采用以下值:
$items = null;
$items = array();
或$items = array('a', 'b');
答案 0 :(得分:4)
如果PHP数组中没有值,即count($array)
为0
,则与null相比时会给出true
。
确保您的阵列中至少有一个值。
答案 1 :(得分:1)
如果你想与null比较,最好使用!==代替!=
这样你告诉PHP使用严格的比较,双方应该是相同的(类型和值)
如果数组为空(例如)
,则可能会得到错误的结果更多for php comparisions here