2013-03-03 53 views
0

它是如何影響性能的?確保我所有的設置者返回$this?允許類似於jQuery編碼標準的鏈式調用。PHP方法返回這個,影響性能?

如:

public function setEnabled(){ 
    $_enabled = true; 
    return $this; 
} 

我發現這個其他question沒有提到性能方面,surley有負

+0

你願意重新引用每個setMethod的對象嗎?這個備用代碼,關心它的影響,它必須比堵塞調用腳本更好。 – 2013-03-03 18:03:53

+0

不成熟的優化是所有邪惡的根源 – Eric 2013-03-03 18:12:34

回答

0

對象是通過引用傳遞,除非您特別克隆它們(在PHP 5不管怎麼說)。我沒有看到這樣做會對性能造成任何影響。

2

沒有顯着的性能影響。對象不克隆。

+0

值得注意的是,由於其他原因,這被認爲是不好的做法。 (鏈接方法導致可讀性差)。 – 2013-03-03 18:27:02

+2

不同意。我很感激。 – Ven 2013-03-03 18:56:16

0

沒有其他問題回答了一切,在你的代碼自動取樣函數總是正確的,可能是鏈條,如果你想

0

PHP return null;相同return;這是一樣的並不返回任何東西。無論哪種方式,返回的東西,它可能是對象引用自身。

0

大部分每行代碼都帶有性能優勢。但是,這不是編寫點的代碼行

你的問題是非常模糊,並取決於幾個因素。正在返回的尺寸對象,它如何被接收以及在返回之前在$this上進行的計算。

通常返回$ this沒有問題,但這都是一個判斷問題。如果$這包含一個巨大的數據數組,你可以認爲它會比你的例子使用更多的內存和處理時間。

+0

這只是一個參考,不是對象本身。在使用之前,它的大小並不重要。這是無關緊要的。 – 2013-03-03 18:10:28