我一直在研究 PHP7 的新特性,并认为我可能会开始为我的项目准备它引入的新特性,比如标量类型提示。
我遇到的第一个问题是我在各种类中的构造函数。我有一些通用的委托人,它们的行为如下:
public function __construct($data = null) {
if (is_numeric($data)) {
$this->controller->createById($data);
}
elseif (is_array($data)) {
$this->controller->createByArray($data);
}
elseif (strlen($data) > 0) {
$this->controller->createByUrl($data);
}
}
为这个方法引入类型提示当然会在各个方向抛出错误。
据我所知,PHP7 没有引入对多个构造函数的支持。有没有办法解决这个问题,或者这是语言的限制之一?