公升級PHP5的理由 PHP4和PHP5效能對比

2021-12-29 16:12:07 字數 2951 閱讀 1498

php 4到今年年底php group將不再對其進行支援了,所以為了讓大家更有信心的轉移到php 5平台上,我特別做了這個測試,看看我們php 4.x 是否真的效能比我們的php 5.x要好捏,測試結果很明顯,那就是php 5.x 比php 4.x不論是物件導向還是面向過程,都要比php 4.x 要快,所以大家完全有必要轉移到php 5.x 平台上,去體驗php 5.x 平台的各種功能和效能。

因為php 5 包括新的物件模型,更多新特點,更快的處理速度,特別是處理物件導向**的速度,雖然在php 4中物件導向**的速度比較一般,但是在php5.x中物件導向**的速度都超過了面向過程的速度,所以不要對物件導向的效能持有懷疑,下面的測試結果將說明這一切。

【測試環境】

相關

測試工具:ab(也可以選用http_load)

名詞rps:requests per second(每秒的請求數量)

【php 4.4.2 測試結果】

[ 函式 function ]

<?php

function signin()

signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1047.23/rps

[ 類 class ]

不例項化類

<?php

class user

} user::signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1034.98/rps

例項化類

<?php

class user

}$user=new user();

$user->signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1006.14/rps

類的繼承

<?php

class auser

}claāss user extends auser

}$user=new user();

$user->signin();

?>

測試結果:ab -n 10000 -c 50 的結果是992.95/rps

【php 5.2.1測試結果】

[ 函式 function ]

<?php

function signin()

signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1176.06/rps

[ 類 class ]

不例項化類

<?php

class user

} user::signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1197.17/rps

例項化類

<?php

class user

}$user=new user();

$user->signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1187.93/rps

類的繼承和抽象

<?php

abstract class auser

class user extends auser

}$user=new user();

$user->signin();

?>

測試結果:ab -n 10000 -c 50 的結果是1128.54/rps

【測試結果和分析】

[ 測試結果資料 ]

版本函式測試

不例項化類

例項化類

類的繼ā承

php 4.4.2

1047.23/rps 

1034.98/rps 

1006.14/rps 

992.95/rps

php 5.2.1

1176.06/rps 

1197.17/rps 

1187.93/rps 

1128.54/rps

[ 結果分析 ]

1.總體來說,可以明顯剛看到php5.2 的效能要比 php4.4略高一點,所以不要懷疑php5.2的效能會差,明顯比 php4要快

2.php4.4中的類的解析效能明顯要比函式的要慢,特別是當使用了繼承以後,更是下降的厲害,所以在php4.4中更適宜使用面向過程和沒有繼承的類操作

3.php5.2中結果是類的執行速度比函式還要快,可以看出php5.2的引擎對物件導向處理花費了很大的功夫,同時他們不論是函式還是類,效能都不錯

4.通過這個測試,我們完全有理由在**變更不大的情況下,把php4公升級到php5,而且php5基本向下相容php4的**,除了一些特殊的**。另外上面提到今年年底之後php group將不再繼續對php4進行維護了,所以早公升級,早安心。

PHP4和PHP5中的引用

php提供了引用操作符 在php中引用的意思是用不同的名字訪問同乙個變數內容,php4和php5中的物件引用是有區別的。a 8 b a echo a a 8 echo b b 8 a 12 echo a a 12 echo b b 8 首先建立變數 a,把整數8賦值給 a,然後把 a賦給 b,這時候...

PHP4和PHP5效能測試和對比

php4和php5效能測試和對比 php 4到今年年底php group將不再對其進行支援了,所以為了讓大家更有信心的轉移到php 5平台上,我特別做了這個測試,看看我們php 4.x 是否真的效能比我們的php 5.x要好捏,測試結果很明顯,那就是php 5.x 比php 4.x不論是物件導向還是...

PHP4和PHP5效能測試和對比

php4和php5效能測試和對比http blog.csdn.net heiyeshuwu php 4到今年年底php group將不再對其進行支援了,所以為了讓大家更有信心的轉移到php 5平台上,我特別做了這個測試,看看我們php 4.x 是否真的效能比我們的php 5.x要好捏,測試結果很明顯...