3v4l.org

run code in 500+ PHP versions simultaneously
<?php class X { public int $a; public int $b; public int $c; public function __isset($name) { var_dump('Called for' .$name); return false; } } $x = new X; $x->a = 2; $x->b = 2; //I am deliberately not setting a value for "c" var_dump($x); var_dump(isset($x->a)); unset($x->a); var_dump($x); var_dump(isset($x->a)); // So why it's called now, since it's the same state?

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
8.5.60.0230.00816.82
8.5.50.0140.00416.63
8.5.40.0180.00516.64
8.5.30.0140.00616.38
8.5.20.0170.00516.32
8.5.10.0290.00516.50
8.5.00.0100.00416.40
8.4.210.0070.00319.60
8.4.200.0270.00619.40
8.4.190.0250.00319.38
8.4.180.0280.00819.51
8.4.170.0200.00819.55
8.4.160.0270.00419.34
8.4.150.0140.00419.68
8.4.140.0160.00417.70
8.4.130.0150.00217.68
8.4.120.0170.00317.90
8.4.110.0160.00717.54
8.4.100.0180.00317.39
8.4.90.0180.00317.75
8.4.80.0170.00417.64
8.4.70.0170.00417.80
8.4.60.0140.00517.62
8.4.50.0140.00517.75
8.4.40.0160.00317.62
8.4.30.0120.00817.43
8.4.20.0170.00417.51
8.4.10.0180.00117.46
8.3.310.0160.00218.20
8.3.300.0150.00318.19
8.3.290.0140.00418.28
8.3.280.0180.00518.28
8.3.270.0180.00916.51
8.3.260.0230.00516.55
8.3.250.0230.00616.26
8.3.240.0130.00516.64
8.3.230.0260.00916.73
8.3.220.0220.00616.57
8.3.210.0140.00516.66
8.3.200.0130.00716.49
8.3.190.0170.00316.71
8.3.180.0300.00716.44
8.3.170.0170.00516.58
8.3.160.0170.00316.48
8.3.150.0170.00516.67
8.3.140.0180.00416.73
8.3.130.0140.00316.61
8.3.120.0160.00116.71
8.3.110.0140.00416.47
8.3.100.0170.00316.57
8.3.90.0170.00516.59
8.3.80.0140.00516.71
8.3.70.0150.00516.67
8.3.60.0140.00616.43
8.3.50.0150.00416.78
8.3.40.0130.00617.72
8.3.30.0120.00517.84
8.3.20.0090.00617.82
8.3.10.0110.00417.98
8.3.00.0120.00317.82
8.2.310.0170.00217.93

preferences:
49.9 ms | 748 KiB | 5 Q