gpt4 book ai didi

PHPUnit assertNull() 测试失败

转载 作者:行者123 更新时间:2023-12-02 04:56:27 24 4
gpt4 key购买 nike

我确定我测试的数组是空的。即使执行 var_dump(array) 打印 array(0) {
}

但是测试 $this->assertNull($array); 失败了。
相反,当我测试下面的代码时,它进入 if 条件:

if ($array == null) {
echo "Entered";
} else {
echo "Not Entered";
}

我不明白为什么会这样。如果有人知道原因,请解释一下。

最佳答案

array(0) { } 是一个空数组。

null 表示根本没有数组。

它们不是一回事。

== 的问题在于它会尝试输入不同的值来匹配它们。空数组是“虚假的”,null 也是如此。

如果你想看区别,用===代替,它不打字杂耍,也比较类型;

$array1 = null;
$array2 = array();
if ($array1 == null) echo '1'; // $array1 is "similar to" null.
if ($array1 === null) echo '2'; // $array1 is null
if ($array2 == null) echo '3'; // $array2 is "similar to" null
if ($array2 === null) echo '4'; // $array2 is null

>>> 123

More on the comparison operators here .

关于PHPUnit assertNull() 测试失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17911082/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com