PHP(外文名: Hypertext Preprocessor,中文名:超文本預(yù)處理器)是一種通用開(kāi)源腳本語(yǔ)言。語(yǔ)法吸收了C語(yǔ)言、Java和Perl的特點(diǎn),易于學(xué)習(xí),使用廣泛,主要適用于Web開(kāi)發(fā)領(lǐng)域。
1、用單引號(hào)代替雙引號(hào)來(lái)包含字符串,這樣做會(huì)更快一些。
2、如果能將類的方法定義成static,就盡量定義成static,它的速度會(huì)提升將近4倍。
4、echo 比 print 快,并且使用echo的多重參數(shù)(譯注:指用逗號(hào)而不是句點(diǎn))代替字符串連接,比如echo $str1,$str2。
5、在執(zhí)行for循環(huán)之前確定最大循環(huán)數(shù),不要每循環(huán)一次都計(jì)算最大值,最好運(yùn)用foreach代替。
6、注銷那些不用的變量尤其是大數(shù)組,以便釋放內(nèi)存。
7、盡量避免使用__get,__set,__autoload。
9、include文件時(shí)盡量使用絕對(duì)路徑,因?yàn)樗苊饬薖HP去include_path里查找文件的速度,解析操作系統(tǒng)路徑所需的時(shí)間會(huì)更少。
10、如果你想知道腳本開(kāi)始執(zhí)行(譯注:即服務(wù)器端收到客戶端請(qǐng)求)的時(shí)刻,使用$_SERVER['REQUEST_TIME']要好于time()
12、str_replace函數(shù)比preg_replace函數(shù)快,但strtr函數(shù)的效率是str_replace函數(shù)的四倍。
14、使用選擇分支語(yǔ)句(譯注:即switch case)好于使用多個(gè)if,else if語(yǔ)句。
16、打開(kāi)apache的mod_deflate模塊,可以提高網(wǎng)頁(yè)的瀏覽速度。
17、數(shù)據(jù)庫(kù)連接當(dāng)使用完畢時(shí)應(yīng)關(guān)掉,不要用長(zhǎng)連接。
19、在方法中遞增局部變量,速度是最快的。幾乎與在函數(shù)中調(diào)用局部變量的速度相當(dāng)。
20、遞增一個(gè)全局變量要比遞增一個(gè)局部變量慢2倍。
21、遞增一個(gè)對(duì)象屬性(如:$this->prop++)要比遞增一個(gè)局部變量慢3倍。
22、遞增一個(gè)未預(yù)定義的局部變量要比遞增一個(gè)預(yù)定義的局部變量慢9至10倍。
24、方法調(diào)用看來(lái)與類中定義的方法的數(shù)量無(wú)關(guān),因?yàn)槲?在測(cè)試方法之前和之后都)添加了10個(gè)方法,但性能上沒(méi)有變化。
25、派生類中的方法運(yùn)行起來(lái)要快于在基類中定義的同樣的方法。
27、Apache解析一個(gè)PHP腳本的時(shí)間要比解析一個(gè)靜態(tài)HTML頁(yè)面慢2至10倍。盡量多用靜態(tài)HTML頁(yè)面,少用腳本。
28、除非腳本可以緩存,否則每次調(diào)用時(shí)都會(huì)重新編譯一次。引入一套PHP緩存機(jī)制通?梢蕴嵘25%至100%的性能,以免除編譯開(kāi)銷。