ホームページ  >  記事  >  バックエンド開発  >  php7の簡単なパフォーマンステストコード例を詳しく解説

php7の簡単なパフォーマンステストコード例を詳しく解説

伊谢尔伦
伊谢尔伦オリジナル
2017-06-27 10:14:122572ブラウズ

テストバージョン:

旧バージョン 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(&#39;b&#39;,&#39;kb&#39;,&#39;mb&#39;,&#39;gb&#39;,&#39;tb&#39;,&#39;pb&#39;); 
        return @round($size/pow(1024,($i=floor(log($size,1024)))),2).&#39; &#39;.$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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。