【发布时间】:2016-06-22 10:02:46
【问题描述】:
我刚刚注意到在 Laravel 中使用了将参数命名为命名空间的函数:
namespace App\Jobs;
use App\User;
use Illuminate\Contracts\Mail\Mailer;
use Illuminate\Contracts\Bus\SelfHandling;
class PurchasePodcast implements SelfHandling
{
protected $mailer;
public function __construct(Mailer $mailer)
{
$this->mailer = $mailer;
}
我找不到任何关于这些是什么或它们做什么的信息。它们是否应该是该特定命名空间中的对象实例?如果是这样,我在哪里实例化它们?
【问题讨论】:
-
它们没有命名空间,它们是类型提示的。
-
如果我们谈论的是构造函数参数,它的类型提示必须是类
Illuminate\Contracts\Mail\Mailer的实例。 -
非常感谢您的解释。那么,类型提示只发生在构造函数中,而在其他函数中它只是命名空间?
标签: php oop namespaces