在PHP OOP中需要帮助

Tom*_*Tom 1 php oop class

我是PHP OOP的新手.我需要一些帮助,如何编写php OOP类,然后可以像下面这样调用类.

Query->table('user')->column('id','name')->where('name LIKE ?', 
  ["name"=> 'John'])->orderby('name', 'desc');
Run Code Online (Sandbox Code Playgroud)

但是,我已经尝试了很多次,我可以得到类似下面的内容然后停止.

Query->table('user')->column('id','name');
Run Code Online (Sandbox Code Playgroud)

我的想法已经不多了,我有很多谷歌,但没有找到任何解决方案.

非常感谢任何合适的帮助.

asl*_*win 5

您只需要使用返回类对象本身的每个函数$this.您想要"在链中"运行的所有功能都应该是public.检查此代码:

<?php

class ClassName
{
    public function a()
    {
        // ...

        return $this;
    }

    public function b($param)
    {
        // ...

        return $this;
    }

    public function c()
    {
        // ...

        return $this;
    }

}

// testing
$obj = new ClassName;

$result = $obj->a()->b('someParam')->c();
Run Code Online (Sandbox Code Playgroud)

你应该阅读方法链.