3v4l.org

run code in 300+ PHP versions simultaneously
<?php //normal function declaration function greeting(){ return "Hellow Developers!"; } echo greeting(); echo "\n"; //function argument and parameter function addition($a,$b){ return $a+$b; } echo addition(10,20); echo "\n"; //default function argument function defaultParam($a,$b=30){ return $a+$b; } echo defaultParam(10); echo "\n"; echo defaultParam(10,25); echo "\n"; //variable scope within function $global = "I am a global variable"; function variableScope(){ echo $local = "I am a local variable"; echo "\n"; global $global ; echo $global; echo "\n"; echo $GLOBALS['global']; echo "\n"; } variableScope(); //anonymous function $anonymousFunction = function($a){ return $a*$a; }; echo $anonymousFunction(10); echo "\n"; //arrow function $arraowFunc = fn($a,$b)=>($a+$b); echo $arraowFunc(20,30); echo "\n"; //callback function function myFunc($callback){ return $callback("World"); } $result = myFunc(function($xyz){ return "Hellow, $xyz"; }); echo $result; ?>

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.4.80.0160.00618.77
8.4.70.0290.00917.63
8.4.60.0270.00717.69
8.4.50.0150.00317.93
8.4.40.0180.00417.63
8.4.30.0150.00617.53
8.4.20.0190.00417.68
8.4.10.0210.00317.73
8.3.220.0210.00418.23
8.3.210.0160.00516.53
8.3.200.0210.00518.21
8.3.190.0170.00416.67
8.3.180.0160.00516.36
8.3.170.0190.00416.09
8.3.160.0180.00516.18
8.3.150.0170.00516.48
8.3.140.0190.00316.40
8.3.130.0200.00116.36
8.3.120.0130.00616.37
8.3.110.0130.00916.32
8.3.100.0210.00216.22
8.3.90.0190.00216.59
8.3.80.0210.00116.57
8.3.70.0150.00616.48
8.3.60.0200.00216.20
8.3.50.0180.00416.52
8.3.40.0170.00317.34
8.3.30.0130.00317.36
8.3.20.0150.00317.43
8.3.10.0150.00217.59
8.3.00.0070.00317.70
8.2.280.0100.00616.34
8.2.270.0130.00516.63
8.2.260.0170.00216.19
8.2.250.0140.00716.26
8.2.240.0140.00616.55
8.2.230.0160.00216.22
8.2.220.0160.00416.25
8.2.210.0180.00516.05
8.2.200.0170.00416.54
8.2.190.0110.00916.60
8.2.180.0130.00616.15
8.2.170.0200.00317.35
8.2.160.0170.00317.63
8.2.150.0170.00217.45
8.2.140.0130.00617.33
8.2.130.0150.00617.39
8.2.120.0170.00317.03
8.2.110.0120.00717.55
8.2.100.0160.00317.20
8.2.90.0170.00317.45
8.2.80.0130.00517.44
8.2.70.0150.00417.42
8.2.60.0150.00617.48
8.2.50.0140.00417.16
8.2.40.0150.00317.45
8.2.30.0160.00317.32
8.2.20.0130.00617.28
8.2.10.0150.00317.39
8.2.00.0100.00617.42

preferences:
27.87 ms | 403 KiB | 5 Q