Testversion:
Alte Version PHP 5.5.29, neue Version PHP 7.0.0
Testmethode:
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 ein Millionen-Array und 500.000 Mal abfragen, ob der Schlüssel vorhanden ist
$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 ***/
Die Testergebnisse sind wie folgt:
➜ time php test.php
php test.php
0,60 s Benutzer
0,05 s System
98 % CPU
0,667 gesamt
➜ Zeit /usr/local/php7/bin /php test.php
/usr/local/php7/bin/php test.php
0,05 s Benutzer
0,02 s System
92 % CPU
0,073 insgesamt
PHP7 ist 9-mal schneller als PHP5.5
2. Generieren Sie eine halbe Million Arrays und fragen Sie eine halbe Million Mal ab, ob ein Wert vorhanden ist
$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 ***/
➜Zeit php test.php
php test.php
0,79 s Benutzer
0,01 s System
99 % CPU
0,809 insgesamt
➜ Zeit /usr/local/php7/bin/php test.php
/usr/local/php7/bin/php test.php
0,08 Sekunden Benutzer
0,01 Sekunden System
97 % CPU
0,091 insgesamt
PHP7 ist 8,7-mal schneller als PHP5.5
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung einfacher Codebeispiele für Leistungstests für PHP7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!