我在将对象传递给其构造函数的类上使用类型提示。传递的对象(Bar)存在于它自己的命名空间中。这一切都很好,直到我将传递的对象换成一个假的(用于单元测试目的)。我的测试 Bar 对象位于它自己的命名空间中,现在(非常正确地)抛出了一个错误。
use Some\Place\Bar
class Foo {
// Passing a test Bar into here now throws error.
public function __construct(Bar $bar) {
$this->bar = $bar;
}
}
我是 PHP 新手,所以不确定什么是可能的。有没有办法解决这个问题,还是我只需要从课程中删除类型提示(这是我目前的解决方案)?