3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Cl { public $v = ['foo']; public function a(): array { return $this->v; } public function &b(): array { return $this->v; } } $o = new Cl(); $iters = 1_000_000; $t = microtime(true); for ($i = 0; $i < $iters; $i++) { $v1 = $o->a(); $v2 = $o->a(); $v3 = $o->a(); $v4 = $o->a(); $v1 = $o->a(); $v2 = $o->a(); $v3 = $o->a(); $v4 = $o->a(); } var_dump(microtime(true) - $t); $t = microtime(true); for ($i = 0; $i < $iters; $i++) { $v1 = $o->b(); $v2 = $o->b(); $v3 = $o->b(); $v4 = $o->b(); $v1 = $o->b(); $v2 = $o->b(); $v3 = $o->b(); $v4 = $o->b(); } var_dump(microtime(true) - $t);
Output for 8.2.1
float(0.1841440200805664) float(0.22905492782592773)
Output for 8.2.0
float(0.18761110305786133) float(0.22448205947875977)
Output for 8.1.14
float(0.18527579307556152) float(0.23158884048461914)
Output for 8.1.13
float(0.18564391136169434) float(0.21802592277526855)
Output for 8.1.12
float(0.1882309913635254) float(0.22716498374938965)
Output for 8.1.11
float(0.19310808181762695) float(0.23529505729675293)
Output for 8.1.10
float(0.21530508995056152) float(0.22035002708435059)
Output for 8.1.9
float(0.1942899227142334) float(0.2529010772705078)
Output for 8.1.8
float(0.18350005149841309) float(0.2348628044128418)
Output for 8.1.7
float(0.19429397583007812) float(0.23433899879455566)
Output for 8.1.6
float(0.20700311660766602) float(0.22539114952087402)
Output for 8.1.5
float(0.19858598709106445) float(0.2236649990081787)
Output for 8.1.4
float(0.18941497802734375) float(0.21945595741271973)
Output for 8.1.3
float(0.18749213218688965) float(0.22417712211608887)
Output for 8.1.2
float(0.18811607360839844) float(0.2309558391571045)
Output for 8.1.1
float(0.19086503982543945) float(0.24457097053527832)
Output for 8.1.0
float(0.18587207794189453) float(0.2253119945526123)
Output for 8.0.27
float(0.19128704071044922) float(0.2180769443511963)
Output for 8.0.26
float(0.18702912330627441) float(0.22159790992736816)
Output for 8.0.25
float(0.18501615524291992) float(0.22512507438659668)
Output for 8.0.24
float(0.22232294082641602) float(0.22679400444030762)
Output for 8.0.23
float(0.19059014320373535) float(0.22643709182739258)
Output for 8.0.22
float(0.1889791488647461) float(0.22452497482299805)
Output for 8.0.21
float(0.18941187858581543) float(0.2215259075164795)
Output for 8.0.20
float(0.18855595588684082) float(0.23064613342285156)
Output for 8.0.19
float(0.18655705451965332) float(0.22626709938049316)
Output for 8.0.18
float(0.18506598472595215) float(0.22784709930419922)
Output for 8.0.17
float(0.2077009677886963) float(0.23185992240905762)
Output for 8.0.16
float(0.19458699226379395) float(0.23745203018188477)
Output for 8.0.15
float(0.18495917320251465) float(0.21819186210632324)
Output for 8.0.14
float(0.18447399139404297) float(0.22407913208007812)
Output for 8.0.13
float(0.18431806564331055) float(0.22567510604858398)
Output for 8.0.12
float(0.1864149570465088) float(0.22829294204711914)
Output for 8.0.11
float(0.19016599655151367) float(0.21867704391479492)
Output for 8.0.10
float(0.18539714813232422) float(0.2218761444091797)
Output for 8.0.9
float(0.18471097946166992) float(0.2220160961151123)
Output for 8.0.8
float(0.18519115447998047) float(0.21844100952148438)
Output for 8.0.7
float(0.1846020221710205) float(0.22591590881347656)
Output for 8.0.6
float(0.18550491333007812) float(0.21922016143798828)
Output for 8.0.5
float(0.18715214729309082) float(0.21924805641174316)
Output for 8.0.3
float(0.18828892707824707) float(0.22165918350219727)
Output for 8.0.2
float(0.18684601783752441) float(0.22032594680786133)
Output for 8.0.1
float(0.19175004959106445) float(0.22261285781860352)
Output for 7.0.0
Parse error: syntax error, unexpected '_000_000' (T_STRING) in /in/npLfI on line 18
Process exited with code 255.

preferences:
71.74 ms | 401 KiB | 49 Q