2012-01-07 46 views
-2

這個問題是關於代碼優化:什麼是更好的性能和爲什麼(第一個例子更清潔的人類 - >程序員 - >我)?

$value = $anothervalue = getValue(); 

$anothervalue = $getValue; 
$value = $anothervalue; 
+9

談論微觀優化。你找到哪一個*更容易閱讀?*使用那一個。 – cspray 2012-01-07 21:51:58

+10

* [PHP新生想要優化...](http://qkme.me/35ksv1) – mario 2012-01-07 21:52:20

+1

@mario:....:D – hakre 2012-01-07 21:57:46

回答

8

這與真實表現問題無關。

性能改進是,當你替換100個的SQL查詢與1和縮小後的頁生成時間從1秒到0.0001s

只要你不能(可以嗎?)測量2案件之間的差 - 使用一個這是更可讀性和易於維護

1

應該對他們的表現IMO執行相同的操作沒有任何影響,但我更喜歡後來由於可讀性

2
$value = $anothervalue = getValue(); 

我猜可能是效率最高,而且看起來也更好。然而!像這樣的優化在執行時間在所有方面應該沒有關係,所以請隨時使用哪個更清晰給您

+1

爲什麼downvote? – Ryan 2012-01-07 21:55:52

+0

你爲什麼認爲這可能是最有效的? (不是我downvote順便說一句) – 2012-01-07 21:59:10

+1

@釘子:實際上它應該更有效率,只是因爲有1個聲明,而不是2(這樣解析器的工作少);-)雖然我不會以這種方式回答(是的,因爲我會害怕downvotes)))) – zerkms 2012-01-07 22:02:20

1

你在說什麼是。試圖確定哪個更快,因爲即使它們中的一個是(我真誠懷疑),但它們之間的差異將會如此之小以至於在現實生活中沒有實際的區別,這絕對沒有任何好處。

如果您絕對必須找出某種方式,那麼您可以對其進行基準測試。運行一個以$a = $b = func()風格執行操作的循環,然後運行相同的循環,但使用$a = func(); $b = $a樣式。

由於差異可能幾乎不存在,您需要一個非常大的循環,至少100,000次迭代。