PHP依赖注入返回类型,方法链

时间:2016-08-24 19:38:00

标签: php dependency-injection

是否可以在PHP中指定方法的返回类型?

例如,我有ImageInterface,它有方法:

  • 调整大小($ w,$ h)
  • 的setpath($路径)
  • getContents()

我有一个利用PHP库干预的具体类。在resize方法中,我从干预调用resize,然后在方法结束时返回$ this ...

function resize($w, $h) {
    $this->image->resize($w, $h);
    return $this;
}

这样做允许我链接resize()和getContents(),这样我就可以快速$ image-> resize(400,100) - > getContents(),而不是有两个单独的语句。

是否可以将resize()的返回类型指定/约束为ImageInterface的类型?现在它在运行时正确解析,但IDE不知道我们允许链接setPath和getContents。此外,它不会强迫ImageInterface将来实现此样式,这可能会导致问题。

1 个答案:

答案 0 :(得分:0)

您可以使用 PHPDoc注释来声明返回类型(以及许多其他内容......)。要使其工作,您还必须使用支持这些注释的IDE(如NetBeans,PHPStorm等)。快速举例:

"how to pass objects from javascript to php."

此处有更多详情:PSR-5: PHPDoc