2016-05-31 77 views
1

我是PHP OOP中的新成員。我需要一些關於如何編寫php OOP類的幫助,然後可以像下面這樣調用類。在PHP中需要幫助OOP

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

但是,我已經嘗試了很多次,我可以得到它像下面的東西然後停止。

Query->table('user')->column('id','name'); 

我用盡了想法,我有谷歌很多,但未能找到任何解決方案。

任何合適的幫助非常感謝。

+0

您正在使用哪種框架?什麼類型返回列方法? – nayana

+0

我沒有使用任何框架。你能推薦一些好的框架嗎? :) –

+0

我以爲你使用一些框架連接到數據庫..我根本不使用PHP,所以你必須搜索網..我想你會發現很多的框架與數據庫工作.. – nayana

回答

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(); 

您應該閱讀約method chaining

+0

感謝您的意見,我會嘗試現在:) –

+0

這正是我想要的,非常感謝你,你救我的生命,謝謝:) –