ホームページ >バックエンド開発 >PHPチュートリアル >php7の簡単なパフォーマンステストコード例を詳しく解説
テストバージョン:
旧バージョン PHP 5.5.29、新バージョン PHP 7.0.0
テスト方法:
class PerformanceTest { private $time; private $memory; public function begin() { $this->time = $this->getTime(); $this->memory = $this->getMemory(); } public function end() { $this->time = $this->getTime() - $this->time; $this->time = round($this->time,7);//在这里才能格式化时间 $this->memory = $this->getMemory() - $this->memory; $this->memory = $this->convert($this->memory); echo "time:{$this->time}秒<br />"; echo "memory:{$this->memory}<br />"; } public function getTime() { list($usec, $sec) = explode(" ", microtime()); return ((float)$usec + (float)$sec); } public function getMemory() { return memory_get_usage(); } public function convert($size) { $unit=array('b','kb','mb','gb','tb','pb'); return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i]; } }
1. 500,000 個の配列を生成し、キーが存在するかどうかを 500,000 回クエリします
$a = array(); $b = new PerformanceTest(); $b->begin(); for($i=0;$i<500000;$i++){ $a[$i] = $i; } foreach($a as $i) { array_key_exists($i, $a); } $b->end(); /*** php 5.5n time:0.131秒 memory:40.15 mb php 7.0n time:0.0780001秒 memory:14 mb ***/
テスト結果は次のとおりです。
➜時間 php test.php
php test.php
0.60秒 ユーザー
0.05秒 システム
98% cpu
0.667 合計
➜ 時間 /usr/local/php7/bin/php テスト。
/usr/local/php7/bin/php test.php
0.05s user
0.02s system
92% cpu
total
PHP7はPHP5.5
2より9倍高速です。 50万個の配列と値が存在するかどうかを50万回クエリ
$a = array(); $b = new PerformanceTest(); $b->begin(); for($i=0;$i<10000;$i++){ $a[$i] = $i; } foreach($a as $i) { in_array($i, $a); } $b->end(); /*** php 5.5n time:0.6560001秒 memory:845.49 kb php 7.0n time:0.095秒 memory:388 kb ***/
➜時間 php test.php
php test.php
0.79s user
0.01s system
99% cpu
0.809 total
➜ time /usr/local/php7/bin/php test.php
/usr/local/php7/bin/php test.php
0.08s user
0.01s system
97% cpu
0.091 total
PHP7 は PHP5.5 より 8.7 倍高速です
以上がphp7の簡単なパフォーマンステストコード例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。