小编典典

PHP 方法链还是流利的接口?

all

我正在使用 PHP 5,并且听说了面向对象方法中的一个新功能,称为“方法链”。究竟是什么?我该如何实施?


阅读 61

收藏
2022-07-30

共1个答案

小编典典

这很简单,真的。您有一系列mutator
方法
,它们都返回原始(或其他)对象。这样,您可以继续在返回的对象上调用方法。

<?php
class fakeString
{
    private $str;
    function __construct()
    {
        $this->str = "";
    }

    function addA()
    {
        $this->str .= "a";
        return $this;
    }

    function addB()
    {
        $this->str .= "b";
        return $this;
    }

    function getStr()
    {
        return $this->str;
    }
}


$a = new fakeString();


echo $a->addA()->addB()->getStr();

这输出“ab”

在线尝试!

2022-07-30