|
這篇文章中的建議涵蓋了大部分PHP代碼性能方面的問題。如果你是做一些小網(wǎng)站或者小項(xiàng)目,那么有理由忽略這些建議,但是當(dāng)你為大量用戶提供長期穩(wěn)定的服務(wù)的時(shí)候,就必須關(guān)注了。開發(fā)人員必須從項(xiàng)目一開始就考慮這些建議,它會(huì)極大的改善你的網(wǎng)站的性能。
在PHP中,通常有很多的方法可以來達(dá)到相同的目的,但是開發(fā)人員通常選擇他們最熟悉的用起來最舒服的一種方式,但是有些事必須注意的:
1.echo比print要快很多。兩個(gè)方法都會(huì)在頁面上打印東西,不過echo不返回任何值,print會(huì)在成功或失敗的時(shí)候返回0或1。
2.include_once比include更加耗時(shí)。因?yàn)樗枰z查你要包含的class是否已經(jīng)被包含進(jìn)來。
3.對于長段落的字符串一定要使用單引號(hào),而不是雙引號(hào)。因?yàn)殡p引號(hào)會(huì)去搜索字符串中的變量。比如:echo ‘This is long string’.$name就比echo “This is long string $name”要快很多。
4.不要再循環(huán)中使用for($i=0;$i 5.如果能將函數(shù)定義為靜態(tài)的,那么就不要定義成為成員函數(shù),靜態(tài)函數(shù)比成員函數(shù)快33%。
6.如果你可以不通過正則表達(dá)式就能解決問題,那么就別用正則。正則表達(dá)式比PHP原生的函數(shù)要慢一些。例如使用str_replace取代preg_replae。
7.盡量不要使用相對路徑來包含文件。在相對路徑中查找文件,會(huì)現(xiàn)在當(dāng)前目錄中查找,然后依次再查找。這樣查找文件就很慢。最好是先定義WEB_ROOT這樣的常量,然后使用這個(gè)常量來包含文件。
8.全等符號(hào)===比相等==要快。而且if(1 == ’1′)會(huì)返回true,if(0 == ”)也會(huì)返回true,而當(dāng)你使用全等符號(hào)的時(shí)候if(1 ===’1′)和if(0===”)都會(huì)返回false。所以當(dāng)你在程序中需要檢測一些布爾變量的時(shí)候最好使用全等符號(hào)。
9.最好別用簡寫的
10.最好不要使用和依賴于register_global或者magic_quote,讀取和設(shè)置你的php.ini的時(shí)候也一定要小心。
這里并沒有涵蓋所有的優(yōu)化方面,RockUX會(huì)在后面的文章中講到。請多多關(guān)注。
轉(zhuǎn)載請注明:
作者:RockUX–WEB前端 |
該文章在 2012/4/4 0:39:32 編輯過