php 效能優化

2021-09-06 18:19:34 字數 2635 閱讀 4963

1 不要隨便複製變數。

有時候為了使 php **更加整潔,一些 php 新手(包含我)會把提前定義好的變數拷貝到乙個名字更簡短的變數中,事實上這樣做的結果是新增了一倍的記憶體消耗,僅僅會使程式更加慢。試想一下,在以下的樣例中,假設使用者惡意插入 512kb 位元組的文字到文字輸入框中,這樣就會導致 1mb 的記憶體被消耗!

bad:

$description

=$_post

['description'];

echo

$description

;

good:

echo

$_post

['description'

];

2. 對字串使用單引號

php 引擎同意使用單引號和雙引號來封裝字串變數,可是這個是有非常大的區別的!使用雙引號的字串告訴 php 引擎首先去讀取字串內容,查詢當中的變數,並改為變數相應的值。一般來說字串是沒有變數的,所以使用雙引號會導致效能不佳。最好是使用字串連線而不是雙引號字串。

bad:

$output

="this is a plain string"

;

good:

$output

='this is a plain string'

;

bad:

$type

="mixed"

;$output

= "this is a $type string";

good:

$type

='mixed'

;$output

='this is a '

.$type

.' string'

;

3. 使用 echo 函式來輸出字串 

使用 echo() 函式來列印結果出了有更easy閱讀之外,在下個樣例中,你還能夠看到有更好的效能。由於print是函式,而echo是php的內建語法

bad:

print(

$myvariable

);

good:

echo

$myvariable

;

4. 不要在 echo 中使用連線符

非常多 php 程式猿(有包含我)不知道在用 echo 輸出多個變數的時候,事實上能夠使用逗號來分開的,而不必用字串先把他們先連起來,如以下的第乙個樣例中,由於使用了連線符就會有效能問題,由於這樣就會須要 php 引擎首先把全部的變數連線起來,然後在輸出,而在第二個樣例中,php 引擎就會依照循序輸出他們。

bad:

echo

'hello, my name is'

.$firstname

.$lastname

.' and i live in '

.$city

;

good:

echo

'hello, my name is'

,$firstname

,$lastname

,' and i live in '

,$city

;

5. 使用 switch/case 取代 if/else

對於僅僅有單個變數的推斷,使用 switch/case 語句而不是 if/else 語句,會有更好的效能,而且**更加easy閱讀和維護。

6 「用i+=1取代i=i+1。符合c/c++的習慣,效率還高」;

1 php指令碼執行時間 max_execution_time = 30

該選項設定php程式的最大執行時間,假設乙個php指令碼被請求,且該php指令碼在max_execution_time時間內沒能執行完成,則php不再繼續執行,直接給client返回超時錯誤。沒有特殊須要該選項可保持預設設定30秒,假設您的php指令碼確實須要長執行時間則能夠適當增大該時間設定。 

2 php指令碼處理記憶體占用  memory_limit = 128m

該選項指定php指令碼處理所能占用的最大記憶體,默覺得128mb,假設您的server記憶體為1gb以上,則該選項能夠設定大一些(只是貌似沒什麼意義,一條)

3 php全域性函式宣告找到:register_globals = off

當 register_globals 開啟以後,各種變數都被注入**,比如來自 html 表單的請求變數。再加上 php 在使用變數之前是無需進行初始化的,這就使得更easy寫出不安全的**。比如 www.test.com/index.php?abc=test 假設開啟該設定的話能夠直接在php檔案裡用$abc試用改值

41php 編譯快取apc

php 指令碼假設不做緩衝,每次呼叫都須要編譯,因此,安裝乙個 php 緩衝產品能提公升 25-100% 的效能。

優化php效能

優化php效能的五個實用技巧 以下是五個優化技巧,熟練掌握後對於開發還是很有幫助的。1.對字串使用單引號 php 引擎允許使用單引號和雙引號來封裝字串變數,但是這個是有很大的差別的!使用雙引號的字串告訴 php 引擎首先去讀取字串內容,查詢其中的變數,並改為變數對應的值。一般來說字串是沒有變數的,所...

php 效能優化

1 使用 優化工具 zend optimizer,原理是通過檢測zend引擎產生的中間 並且優化他 來提高速度 安裝 zend optimizer,在php.ini裡新增 zend optimizer.optimization level 15 zend extension path to zend...

PHP效能優化

php效能優化 程式優化 1 最好是使用字串連線與單引號,而不是雙引號字串。2 不要隨便複製變數。3 盡量使用echo輸出字串。4 盡量不要使用連線符,輸出多個變數時可以用逗號分開。5 盡量使用switch代替if else。6 不做無畏的替換,先用strpos查詢再做替換,不要做替換效率高200 ...