2012-06-06 32 views
1

如果我在整個應用程序中有很多引用,例如下面的代碼片段,在使用雙引號而不是單引號/撇號時沒有解析需要用單引號替換所有這些雙引號對我的應用程序的性能有積極影響?當在整個應用程序中不需要解析時,PHP用雙引號代替雙引號

$is_parkland = $info["is_parkland"]; 

據我瞭解,在本例中使用"以上要求PHP的雙引號之間的解析內容。這種事情在我的遺留代碼應用程序中很明顯。

我在我的應用程序中有大約300,000行PHP,真的,我很想知道它們是否被所有替代,必要時這會對我的應用程序有一個明顯的或積極的影響?

是否值得努力?我使用PHP 5.3.13。

+0

從5.3開始,編譯器向RTS發出相同的操作碼序列。因此,對於PHP 5.3.13來說,這幾乎是浪費時間 - 你更可能做出一些有趣的編輯動作並破壞工作代碼。 – TerryE

回答

0

PHP基準:

http://phpbench.com/

它看起來像PHP的新版本有單引號和雙引號之間的差別不大。

+0

這是不正確的,請參閱動態的帖子上的評論 – bouke

+0

哪部分是不正確的?看看PHP的基準測試頁面,兩者之間的差異很小。事實上,如果您重新加載頁面幾次,您可以看到它是最快的。從這些基準來看,不可能判斷一個人是否更快。或者正如我最初所說,沒有什麼區別。無可否認,TerryE的評論更詳細地表明瞭**沒有**差異,但我不明白我的錯誤? –

0

單引號具有比雙引號更高的速度。它並不多,但是有了30萬行代碼,它可能會產生重大影響。 來源:PHP Benchmark

+1

從這一方面的基準沒有顯示出其中一種類型的性能增益。 – bouke

+0

它顯示117%的雙引號和100%的單引號。 – Steve

+0

'+ 103%單(')引號。 20字節文本和3x a $:$ tmp [] ='aa $ aaaa $ aaaa $ a';總時間:194μs查看代碼' '+ 105%double(「)quotes。20 bytes Text and 3x a $: $ tmp [] =「aa $ aaaa $ aaaa $ a」;總時間:197μs查看代碼' 而且仍然...這些3μs可能仍然落在統計分析的99%置信區間內 – bouke

1

我認爲性能差異並不顯着。另外,如果應用程序的性能令人滿意並且負載不高,那麼無論如何,增益都不會被注意到。