Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php7简单性能测试代码实例详解

php7简单性能测试代码实例详解

伊谢尔伦
伊谢尔伦asal
2017-06-27 10:14:122625semak imbas

测试版本:

旧版 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.生成五十万个数组,并查询五十万次 key 是否存在

$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
***/

测试结果如下:

➜ time php test.php

php test.php

0.60s user

0.05s system

98% cpu

0.667 total

➜ time /usr/local/php7/bin/php test.php

/usr/local/php7/bin/php test.php

0.05s user

0.02s system

92% cpu

0.073 total

PHP7 速度是 PHP5.5 的 9 倍

2. 生成五十万个数组,并查询五十万次 value 是否存在

$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
***/

➜ time 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 倍

Atas ialah kandungan terperinci php7简单性能测试代码实例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn