当前位置: 代码迷 >> PHP >> 在一行语句里调用一个类的多个方法,该如何写
  详细解决方案

在一行语句里调用一个类的多个方法,该如何写

热度:162   发布时间:2016-04-28 18:36:04.0
在一行语句里调用一个类的多个方法,该怎么写?
比如这句:
$this->m_button6PaneInfo->Movable( false )->Dock()->Fixed()->BottomDockable( false )->TopDockable( false )->Layer( 10 )->ToolbarPane();

$this->m_button6PaneInfo 是一个类实例。后面的全是该类的方法。
这条语句是无法通过的,至少我的php版本无法通过。

除了拆成多行外,这条该怎么改?才能正确执行?
或者升级到哪个版本?才可以这样写
------解决方案--------------------
这样写
class testcls{
    function fun1(){
        echo 'fun1';
        return $this;
    }
    function fun2(){
        echo 'fun1';
        return $this;
    }
    function fun3(){
        echo 'fun3';
        return $this;
    }
}
$test = new testcls();
$test->fun1()->fun2()->fun3();

------解决方案--------------------
链式操作的前提,每次操作都返回对象本身。
  相关解决方案