国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - 提高PHP編程效率的53個要點(經驗小結)

提高PHP編程效率的53個要點(經驗小結)

2019-11-08 13:40php教程網 PHP教程

下面是php老手整理的一些開發經驗之談,提高php的執行效率。

用單引號代替雙引號來包含字符串,這樣做會更快一些。因為PHP會在雙引號包圍的字符串中搜尋變量,單引號則不會,注意:只有echo能這么做,它是一種可以把多個字符串當作參數的“函數”(譯注:PHP手冊中說echo是語言結構,不是真正的函數,故把函數加上了雙引號)。 

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%的性能,以免除編譯開銷。

28、盡量做緩存,可使用memcached。memcached是一款高性能的內存對象緩存系統,可用來加速動態Web應用程序,減輕數據庫負載。對運算碼 (OP code)的緩存很有用,使得腳本不必為每個請求做重新編譯。

29、當操作字符串并需要檢驗其長度是否滿足某種要求時,你想當然地會使用strlen()函數。此函數執行起來相當快,因為它不做任何計算,只返回在zval 結構(C的內置數據結構,用于存儲PHP變量)中存儲的已知字符串長度。但是,由于strlen()是函數,多多少少會有些慢,因為函數調用會經過諸多步驟,如字母小寫化(譯注:指函數名小寫化,PHP不區分函數名大小寫)、哈希查找,會跟隨被調用的函數一起執行。在某些情況下,你可以使用isset() 技巧加速執行你的代碼。
(舉例如下)

 

if (strlen($foo) < 5) { echo “Foo is too short”$$ }

 

(與下面的技巧做比較)

 

if (!isset($foo{5})) { echo “Foo is too short”$$ }

 

調用isset()恰巧比strlen()快,因為與后者不同的是,isset()作為一種語言結構,意味著它的執行不需要函數查找和字母小寫化。也就是說,實際上在檢驗字符串長度的頂層代碼中你沒有花太多開銷。

34、當執行變量$i的遞增或遞減時,$i++會比++$i慢一些。這種差異是PHP特有的,并不適用于其他語言,所以請不要修改你的C或Java代碼并指望它們能立即變快,沒用的。++$i更快是因為它只需要3條指令(opcodes),$i++則需要4條指令。后置遞增實際上會產生一個臨時變量,這個臨時變量隨后被遞增。而前置遞增直接在原值上遞增。這是最優化處理的一種,正如Zend的PHP優化器所作的那樣。牢記這個優化處理不失為一個好主意,因為并不是所有的指令優化器都會做同樣的優化處理,并且存在大量沒有裝配指令優化器的互聯網服務提供商(ISPs)和服務器。

35、并不是事必面向對象(OOP),面向對象往往開銷很大,每個方法和對象調用都會消耗很多內存。

36、并非要用類實現所有的數據結構,數組也很有用。

37、不要把方法細分得過多,仔細想想你真正打算重用的是哪些代碼?

38、當你需要時,你總能把代碼分解成方法。 

39、盡量采用大量的PHP內置函數。 

40、如果在代碼中存在大量耗時的函數,你可以考慮用C擴展的方式實現它們。 
41、評估檢驗(profile)你的代碼。檢驗器會告訴你,代碼的哪些部分消耗了多少時間。Xdebug調試器包含了檢驗程序,評估檢驗總體上可以顯示出代碼的瓶頸。 
42、mod_zip可作為Apache模塊,用來即時壓縮你的數據,并可讓數據傳輸量降低80%。 

43、在可以用file_get_contents替代file、fopen、feof、fgets等系列方法的情況下,盡量用file_get_contents,因為他的效率高得多!但是要注意file_get_contents在打開一個URL文件時候的PHP版本問題; 

44、盡量的少進行文件操作,雖然PHP的文件操作效率也不低的; 

45、優化Select SQL語句,在可能的情況下盡量少的進行Insert、Update操作(在update上,我被惡批過); 

46、盡可能的使用PHP內部函數(但是我卻為了找個PHP里面不存在的函數,浪費了本可以寫出一個自定義函數的時間,經驗問題啊!); 

47、循環內部不要聲明變量,尤其是大變量:對象(這好像不只是PHP里面要注意的問題吧?); 

48、多維數組盡量不要循環嵌套賦值; 

49、在可以用PHP內部字符串操作函數的情況下,不要用正則表達式; 

50、foreach效率更高,盡量用foreach代替while和for循環; 

51、用單引號替代雙引號引用字符串; 

52、“用i+=1代替i=i+1。符合c/c++的習慣,效率還高”; 

53、對global變量,應該用完就unset()掉;

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 日本丶国产丶欧美色综合 | 一区二区国产精品 | 国产精品一区二区不卡 | 国产黄色大片 | 欧美成年网站 | 中文字幕一区二区三区四区不卡 | 一级毛片免费视频 | 午夜国产精品成人 | 精品在线一区二区三区 | 亚洲日本va中文字幕 | 亚洲免费在线观看 | 99在线免费观看 | 一区二区三区视频在线观看 | 在线免费观看黄色 | 欧美性久久 | 我我色综合 | 精品无码久久久久久久动漫 | 中文字幕一区二区三区久久 | 久久精品国产99国产精品 | 欧美一区2区三区4区公司二百 | 色综合色综合网色综合 | 天天操综合网 | 一级国产 | 国产高清久久久 | 日韩一区二区三区在线 | 日夜夜精品视频 | 婷婷综合在线 | 在线a∨| 蜜桃传媒一区二区 | 午夜精品一区二区三区在线播放 | 欧美三级影院 | 中文字幕成人 | 亚洲成人自拍 | 国产中文字幕在线看 | 欧美精品999| 91精品国产综合久久香蕉922 | 欧美日韩在线一区 | 91仓库| 免费午夜视频 | 激情国产精品 | 精精国产xxxx视频在线观看 |