对象的实例在PHP中变为null

时间:2016-12-13 10:14:16

标签: php

我们遇到了一个间歇性问题,实例化对象的变量似乎在一行或两行代码中随机变为空。

例如

class Club {
}

class Foo {
    public function Bar(Club $club)
    {
        // Do something
    }
}

$club = new Club();
(new Foo())->Bar($club);

通过错误Argument 1 passed to Foo::bar() must be an instance of Club, null given这会在运行单元测试时特别普遍,但看到它有时会出现在实时请求中。

甚至尝试使用嘲弄来绕过俱乐部课程中的任何可能的问题

$club = Mockery::mock(Club::class);
(new Foo())->Bar($club);

这是在Ubuntu 14.04.3 LTS和PHPUnit 5.4.7上运行PHP 7.0.12-1

有人遇到过类似的问题吗?或任何有关如何调试此类问题的想法(特别是考虑到它的间歇性)

0 个答案:

没有答案