3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { static function cast(&$val, $key, $allow_zero_first_character = false) { if (is_numeric($val)) { if($allow_zero_first_character || (!$allow_zero_first_character && $val[0] != '0')) { $val += 0; } } } static function run() { $arr = ['stri33ng123', 84, 76.7, '45.6', '67.5e45', '56,9', 078, 0.78, '078', '0.78', .78, '.78']; var_dump($arr); //array_walk($arr , ['self', 'cast']); array_walk($arr , 'self::cast'); var_dump($arr); } } A::run();

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)
5.6.280.0000.07321.03
5.6.210.0130.07020.70
5.6.200.0070.06018.15
5.6.190.0000.04720.61
5.6.180.0230.08020.61
5.6.170.0200.05320.62
5.6.160.0030.06020.55
5.6.150.0170.06018.20
5.6.140.0000.04318.17
5.6.130.0070.04318.27
5.6.120.0100.08021.00
5.6.110.0030.04321.01
5.6.100.0130.03021.11
5.6.90.0170.07320.89
5.6.80.0070.08020.29
5.5.350.0370.07320.54
5.5.340.0130.06717.98
5.5.330.0030.09020.27
5.5.320.0000.04720.31
5.5.310.0200.07720.41
5.5.300.0070.05017.95
5.5.290.0070.03717.96
5.5.280.0130.07720.81
5.5.270.0030.04020.88
5.5.260.0070.08020.77
5.5.250.0170.06020.60
5.5.240.0130.07020.27
5.4.450.0270.07719.41
5.4.440.0230.06019.52
5.4.430.0230.04319.52
5.4.420.0330.06319.54
5.4.410.0230.07719.33
5.4.400.0230.05019.00
5.4.390.0330.06718.88
5.4.380.0130.05719.00
5.4.370.0270.07319.16
5.4.360.0330.04719.21
5.4.350.0230.04718.89
5.4.340.0130.04318.86
5.4.320.0270.07319.22
5.4.310.0270.07018.95
5.4.300.0170.07319.15
5.4.290.0230.07019.18
5.4.280.0270.04319.09
5.4.270.0230.07319.08
5.4.260.0200.05018.85
5.4.250.0170.05019.16
5.4.240.0230.04719.05
5.4.230.0270.04018.86
5.4.220.0270.05319.21
5.4.210.0230.05018.99
5.4.200.0200.05018.94
5.4.190.0170.06319.18
5.4.180.0270.07318.96
5.4.170.0200.04319.05
5.4.160.0270.03019.13
5.4.150.0200.03718.94
5.4.140.0230.05016.47
5.4.130.0230.03016.72
5.4.120.0170.05316.54
5.4.110.0270.06716.50
5.4.100.0230.06016.60
5.4.90.0230.05016.42
5.4.80.0270.04716.49
5.4.70.0230.03716.59
5.4.60.0370.03716.43
5.4.50.0270.07316.50
5.4.40.0200.04716.42
5.4.30.0200.03316.23
5.4.20.0370.04016.53
5.4.10.0200.04016.53
5.4.00.0230.06715.80
5.3.270.0330.06314.57
5.3.260.0200.05314.72
5.3.250.0270.03014.68
5.3.240.0230.03314.83
5.3.230.0230.04714.65
5.3.220.0270.05314.57
5.3.210.0200.04014.47
5.3.200.0170.08014.73
5.3.190.0200.06014.57
5.3.180.0170.05714.48
5.3.170.0270.06014.65
5.3.160.0270.04014.54
5.3.150.0230.07014.58
5.3.140.0270.06014.60
5.3.130.0330.06714.54
5.3.120.0270.07314.46
5.3.110.0330.05714.71
5.3.100.0370.03314.04
5.3.90.0230.06314.02
5.3.80.0300.06013.95
5.3.70.0230.06314.10
5.3.60.0170.03713.98
5.3.50.0230.04013.86
5.3.40.0300.03314.07
5.3.30.0230.07013.83
5.3.20.0330.03713.67
5.3.10.0230.06713.57
5.3.00.0270.05013.54
5.2.170.0200.03013.13
5.2.160.0130.06313.13
5.2.150.0270.05013.13
5.2.140.0170.05713.13
5.2.130.0170.05713.13
5.2.120.0270.05013.13
5.2.110.0200.05013.13
5.2.100.0170.04313.13
5.2.90.0270.05013.13
5.2.80.0170.04013.13
5.2.70.0170.06713.13
5.2.60.0300.05013.13
5.2.50.0200.05713.13
5.2.40.0130.06313.13
5.2.30.0170.04013.13
5.2.20.0200.05313.13
5.2.10.0170.04013.13
5.2.00.0130.06313.13
5.1.60.0170.04313.13
5.1.50.0130.05713.13
5.1.40.0170.04713.13
5.1.30.0170.05713.13
5.1.20.0230.05013.13
5.1.10.0130.05013.13
5.1.00.0170.03713.13
5.0.50.0100.04013.13
5.0.40.0070.03313.13
5.0.30.0070.04313.13
5.0.20.0030.03313.13
5.0.10.0130.03013.13
5.0.00.0100.04713.13
4.4.90.0200.02313.13
4.4.80.0100.03313.13
4.4.70.0100.01713.13
4.4.60.0100.03313.13
4.4.50.0070.03713.13
4.4.40.0070.05313.13
4.4.30.0100.03313.13
4.4.20.0030.04013.13
4.4.10.0100.03313.13
4.4.00.0100.04713.13
4.3.110.0070.03313.13
4.3.100.0030.02313.13
4.3.90.0170.02713.13
4.3.80.0070.04313.13
4.3.70.0100.03313.13
4.3.60.0070.03713.13
4.3.50.0070.03013.13
4.3.40.0070.03713.13
4.3.30.0030.04013.13
4.3.20.0030.03713.13
4.3.10.0070.03013.13
4.3.00.0000.04013.13

preferences:
143.67 ms | 1386 KiB | 7 Q