如何提高php效能1

2021-07-15 18:01:10 字數 1475 閱讀 7610

1、 如果能將類的方法定義成static,就盡量定義成static,它的速度會提公升將近4倍。 

2、$row[』id』] 的速度是$row[id]的7倍。

3、echo 比 print快,並且使用echo的多重引數(譯註:指用逗號而不是句點)代替字串連線,比如echo$str1,$str2。 

4、在執行for迴圈之前確定最大迴圈數,不要每迴圈一次都計算最大值,最好運用foreach代替。  5、登出那些不用的變數尤其是大陣列,以便釋放記憶體。 

6、盡量避免使用__get,__set,__autoload。

7、require_once()代價昂貴。 

8、include檔案時盡量使用絕對路徑,因為它避免了php去include_path裡查詢檔案的速度,解析作業系統路徑所需的時間會更少。

9、如果你想知道指令碼開始執行(譯註:即伺服器端收到客戶端請求)的時刻,使用$_server[『request_time』]要好於 time()。 

10、函式代替正規表示式完成相同功能。 

11、str_replace函式比preg_replace函式快,但strtr函式的效率是str_replace函式的四倍。 

12、如果乙個字串替換函式,可接受陣列或字元作為引數,並且引數長度不太長,那麼可以考慮額外寫一段替換**,使得每次傳遞引數是乙個字元,而不是只寫一行**接受陣列作為查詢和替換的引數。 

13、使用選擇分支語句(譯註:即switch case)好於使用多個if,else if語句。 

14、用@遮蔽錯誤訊息的做法非常低效,極其低效。 

15、開啟apache的mod_deflate模組,可以提高網頁的瀏覽速度。 

16、資料庫連線當使用完畢時應關掉,不要用長連線。 

17、錯誤訊息代價昂貴。 

18、在方法中遞增區域性變數,速度是最快的。幾乎與在函式中呼叫區域性變數的速度相當。 

19、遞增乙個全域性變數要比遞增乙個區域性變數慢2倍。 

20、遞增乙個物件屬性(如:$this->prop++)要比遞增乙個區域性變數慢3倍。

21、遞增乙個未預定義的區域性變數要比遞增乙個預定義的區域性變數慢9至10倍。 

22、僅定義乙個區域性變數而沒在函式中呼叫它,同樣會減慢速度(其程度相當於遞增乙個區域性變數)。php大概會檢查看是否存在全域性變數。 

23、方法呼叫看來與類中定義的方法的數量無關,因為我(在測試方法之前和之後都)新增了10個方法,但效能上沒有變化。 

24、派生類中的方法執行起來要快於在基類中定義的同樣的方法。 

25、呼叫帶有乙個引數的空函式,其花費的時間相當於執行7至8次的區域性變數遞增操作。類似的方法呼叫所花費的時間接近於15次的區域性變數遞增操作。 

26、apache解析乙個php指令碼的時間要比解析乙個靜態html頁面慢2至10倍。盡量多用靜態html頁面,少用指令碼。 

27、除非指令碼可以快取,否則每次呼叫時都會重新編譯一次。引入一套php快取機制通常可以提公升25%至100%的效能,以免除編譯開銷。 

如何提高MySQL效能

一 問題的提出 在應用系統開發初期,由於開發資料庫資料比較少,對於查詢sql語句,複雜檢視的的編寫等體會不出sql語句各種寫法的效能優劣,但是如果將應用系統 提交實際應用後,隨著資料庫中資料的增加,系統的響應速度就成為目前系統需要解決的最主要的問題之一。系統優化中乙個很重要的方面就是sql語句的優化...

android 如何提高軟體效能

android的效能優化,以下小細節雖然效能提高不是太明顯,但是整個專案都遵循以下規則,效能的提高也是不可忽視的 1 如果方法用不到成員變數,可以把方法宣告為static,效能提高10 到20 2 避免使用getter和setter方法訪問field,可以把field宣告為public,直接訪問 3...

PHP提高指令碼效能要點

1.刪除重複項 array keys array flip array 速度比 array unique array 高於30 2.獲取隨機數組記錄 array mt rand 0,count array 1 速度比 array rand array 高於96 3.檢查字串僅包含字母數字字元 cty...