我将开始使用用于PHP的MailChimp API包装器,但我遇到了一些我不理解的东西。
代码是用一个名为Mailchimp.php
的根文件设置的,该文件需要其他带有特定API调用类的.php文件(例如模板、活动、列表等)。
父类称为Mailchimp
。在这个类中,子文件由以下行实例化:
$this->campaigns = new Mailchimp_Campaigns($this);
在Campaigns.php文件中,我们有一个类Mailchimp_Campaigns
。这个类的构造函数(它不扩展父级)调用如下:
<?php
class Mailchimp_Campaigns {
public function __construct(Mailchimp $master) {
$this->master = $master;
}
...
我的问题是:(Mailchimp $master)
部分发生了什么?我知道$master
实际上是来自主类的$this
,但Mailchimp
部分是什么?这类似于名称空间吗,还是仅仅是为了识别它是Mailchimp
类的对象?
Mailchimp部分是期望传递给构造函数的对象类型。
这被称为类型暗示。查看此链接了解更多信息:
http://php.net/manual/en/language.oop5.typehinting.php