2013-05-29 62 views
1

這種方法叫什麼?我試圖複製這個,但我不知道谷歌找到類似的解釋結果。非常感謝在此提供的任何信息,謝謝。我相信我在Drupals框架中看到了這一點。班級職能背靠背

$query->fields('...')->condition('...')->execute()->fetchAssoc(); 
+0

這是一個常規的方法調用,碰巧碰巧是不同方法的結果。 – SLaks

+0

該技術被稱爲方法鏈或流暢的界面......這就是你應該把它放入谷歌搜索引擎。主要涉及從你的方法中返回'$ this'。 – Orangepill

+0

Propel使用這種方法進行查詢構建,就像jQuery等不少JavaScript框架一樣。 – halfer

回答

3

它被稱爲方法鏈。它的時候你的方法返回自己(對象):

class testObject 
{ 
    function testMethodOne() 
    { 
     return $this; 
    } 

    function testMethodTwo() 
    { 
     return $this; 
    } 
} 

$obj = new testObject; 
$obj->testMethodOne()->testMethodTwo(); 
+0

您可能需要一個PHP文檔塊才能在IDE中自動完成,否則需要+1。 – halfer

+1

非常感謝這個例子。 – John

0

它被稱爲方法鏈接和可從php5起。
欲瞭解更多信息請查看
stackoverflow.com/questions/3724112/php-method-chaining在Drupal方面

0

正在發生的事情是,一個查詢將作爲輸入提供的「域」(SELECT子句)被解僱, 'condition'過濾記錄(where子句)並執行,最終激發查詢並將輸出作爲關聯數組返回。