20條PHP代碼優(yōu)化技巧_第1頁
20條PHP代碼優(yōu)化技巧_第2頁
20條PHP代碼優(yōu)化技巧_第3頁
20條PHP代碼優(yōu)化技巧_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第第頁20條PHP代碼優(yōu)化技巧一個程序猿不會優(yōu)化代碼?就不是一個好攻城獅。以下是我精心為大家整理的20條PHP代碼優(yōu)化技巧,希望對大家有所幫助!

一個程序員優(yōu)秀與否的判斷標(biāo)準(zhǔn)并非在于他是否能夠編出既定的功能,而是在于他是否能用最精簡、最易維護(hù)的代碼,換來最快的運(yùn)行速度。下面我就為大家整理了一些PHP代碼優(yōu)化方面的小技巧。

1、echo的速度比print快。

2、代碼編寫中,使用echo的多重參數(shù)代替字符串連接。

3、在執(zhí)行for循環(huán)之前確定最大循環(huán)數(shù),不要每循環(huán)一次都計(jì)算最大值,最好運(yùn)用foreach代替。

4、對global變量,應(yīng)該用完就unset()掉,精簡代碼。

5、用單引號代替雙引號來包含字符串,提升效率。因?yàn)镻HP會在雙引號包圍的字符串中搜尋變量,單引號則不會。

6、正則表達(dá)式用函數(shù)代替,完成相同功能。

7、當(dāng)執(zhí)行變量$i的遞增或遞減時,使用前置遞增或遞減。比如:$i++會比++$i慢一些,這種差異是PHP特有的,并不適用于其他語言,++$i更快是因?yàn)樗恍枰?條指令(opcodes),$i++則需要4條指令。后置遞增實(shí)際上會產(chǎn)生一個臨時變量,這個臨時變量隨后被遞增。而前置遞增直接在原值上遞增。

8、使用選擇分支語句(switchcase)優(yōu)于使用多個if,elseif語句。

9、利用var_dump進(jìn)行PHP代碼調(diào)試。如果你在尋找php調(diào)試技術(shù),我必須說var_dump應(yīng)該是你要找的目標(biāo),在顯示php信息方面這個命令可以滿足你的所有需要,而調(diào)試代碼的多數(shù)情況與得到PHP中的數(shù)值有關(guān)。

10、在包含文件時使用完整路徑,解析操作系統(tǒng)路徑所需的時間會更少。

11、動輒創(chuàng)建全局?jǐn)?shù)值是一種糟糕的做法,不過有時候?qū)嶋H情況的確又需要這么做。

對于數(shù)據(jù)庫表或數(shù)據(jù)庫連接信息使用全局?jǐn)?shù)值是一個不錯的想法,但不要在你的PHP代碼中頻繁使用全局?jǐn)?shù)值。另外,更好的一種做法是把你的全局變量存放在一個config.php文件中。

12、使用$_SERVER[‘REQUEST_TIME’]要好于time(),確定腳本開始執(zhí)行的時刻。

13、用@屏蔽錯誤消息的做法非常低效。

14、盡量采用的PHP內(nèi)置函數(shù)。

15、遞增一個未預(yù)定義的局部變量要比遞增一個預(yù)定義的局部變量慢9至10倍。

16、派生類中的方法運(yùn)行起來要快于在基類中定義的同樣的方法。

17、僅定義一個局部變量而沒在函數(shù)中調(diào)用它,同樣會減慢速度(其程度相當(dāng)于遞增一個局部變量)

18、Apache解析一個PHP腳本的時間要比解析一個靜態(tài)HTML頁面慢2至10倍。盡量多用靜態(tài)HTML頁面,少用腳本。

19、正如之前提到的,任何php網(wǎng)站中最重要的部分有99%的可能是數(shù)據(jù)庫。因此,你需要非常熟悉如何正確的使用sql,學(xué)會關(guān)聯(lián)表和更多高級的數(shù)據(jù)庫技術(shù)。

20、引入PHP緩存機(jī)制通??梢蕴嵘?5%至100%的性能,因?yàn)槌悄_本可以緩存,否則每次調(diào)用時都會重新編譯一次。

將php實(shí)現(xiàn)過濾UBB代碼

本文實(shí)例講述了php實(shí)現(xiàn)過濾UBB代碼的類。分享給大家供大家參考。具體如下:

PHP代碼如下:

復(fù)制代碼代碼如下:classDay{

functionubb($Text){///UBB代碼轉(zhuǎn)換

//$Text=htmlspecialchars($Text);

//$Text=ereg_replace(rn,

,$Text);

$Text=ereg_replace([br],

,$Text);

$Text=nl2br($Text);

$Text=stripslashes($Text);

$Text=preg_replace(/t/is,,$Text);

$Text=preg_replace(/[url](http://.+1,$Text);

$Text=preg_replace(/[url](.+1,$Text);

$Text=preg_replace(/[url=(http://.+?)](.+2,$Text);

$Text=preg_replace(/[url=(.+?)](.+2,$Text);

$Text=preg_replace(/[color=(.+?)](.+,2,$Text);

$Text=preg_replace(/[font=(.+?)](.+,2,$Text);

$Text=preg_replace(/[email=(.+?)](.+,2,$Text);

$Text=preg_replace(/[email](.+,1,$Text);

$Text=preg_replace(/[i](.+1,$Text);

$Text=preg_replace(/[u](.+1,$Text);

$Text=preg_replace(/[b](.+1,$Text);

$Text=preg_replace(/[fly](.+1,$Text);

$Text=preg_replace(/[move](.+,1,$Text);

$Text=preg_replac

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論