3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php function callMe(...$args) {} function funcGetArgs°callUserFuncArray() { $args = func_get_args(); call_user_func_array('callMe', $args); } function funcGetArgs°threeDots() { $args = func_get_args(); callMe(...$args); } function threeDots°callUserFuncArray(...$args) { call_user_func_array('callMe', $args); } function threeDots°threeDots(...$args) { callMe(...$args); } foreach(array('funcGetArgs°callUserFuncArray', 'funcGetArgs°threeDots', 'threeDots°callUserFuncArray', 'threeDots°threeDots') as $fn) { $start = microtime(TRUE); for($i=0;$i<10000;$i++) { $fn(1,2,3,4,5); } echo $fn.': '.(microtime(TRUE)-$start)."\n"; }
based on GFFvv
Output for 7.1.0
funcGetArgs°callUserFuncArray: 0.0076329708099365 funcGetArgs°threeDots: 0.0070958137512207 threeDots°callUserFuncArray: 0.0070850849151611 threeDots°threeDots: 0.0065488815307617
Output for 7.0.14
funcGetArgs°callUserFuncArray: 0.005061149597168 funcGetArgs°threeDots: 0.0046379566192627 threeDots°callUserFuncArray: 0.0045878887176514 threeDots°threeDots: 0.0042130947113037
Output for 7.0.6
funcGetArgs°callUserFuncArray: 0.0037009716033936 funcGetArgs°threeDots: 0.0035150051116943 threeDots°callUserFuncArray: 0.0035400390625 threeDots°threeDots: 0.0031280517578125
Output for 7.0.5
funcGetArgs°callUserFuncArray: 0.0035219192504883 funcGetArgs°threeDots: 0.0034220218658447 threeDots°callUserFuncArray: 0.0033988952636719 threeDots°threeDots: 0.0029668807983398
Output for 7.0.4
funcGetArgs°callUserFuncArray: 0.0040960311889648 funcGetArgs°threeDots: 0.0039479732513428 threeDots°callUserFuncArray: 0.0039029121398926 threeDots°threeDots: 0.00341796875
Output for 7.0.3
funcGetArgs°callUserFuncArray: 0.003654956817627 funcGetArgs°threeDots: 0.0033259391784668 threeDots°callUserFuncArray: 0.0034148693084717 threeDots°threeDots: 0.003018856048584
Output for 7.0.2
funcGetArgs°callUserFuncArray: 0.0038290023803711 funcGetArgs°threeDots: 0.0036628246307373 threeDots°callUserFuncArray: 0.003715991973877 threeDots°threeDots: 0.0031070709228516
Output for 7.0.1
funcGetArgs°callUserFuncArray: 0.0037729740142822 funcGetArgs°threeDots: 0.0035250186920166 threeDots°callUserFuncArray: 0.0035738945007324 threeDots°threeDots: 0.0030758380889893
Output for 7.0.0
funcGetArgs°callUserFuncArray: 0.0039019584655762 funcGetArgs°threeDots: 0.0036768913269043 threeDots°callUserFuncArray: 0.0036728382110596 threeDots°threeDots: 0.0031280517578125
Output for hhvm-3.12.0
funcGetArgs°callUserFuncArray: 0.0057868957519531 funcGetArgs°threeDots: 0.0054218769073486 threeDots°callUserFuncArray: 0.0050449371337891 threeDots°threeDots: 0.0046100616455078
Output for hhvm-3.10.0
funcGetArgs°callUserFuncArray: 0.0064570903778076 funcGetArgs°threeDots: 0.0062770843505859 threeDots°callUserFuncArray: 0.0055680274963379 threeDots°threeDots: 0.0053408145904541
Output for 5.6.28
funcGetArgs°callUserFuncArray: 0.018922090530396 funcGetArgs°threeDots: 0.011126041412354 threeDots°callUserFuncArray: 0.016582012176514 threeDots°threeDots: 0.010390996932983
Output for 5.6.21
funcGetArgs°callUserFuncArray: 0.012710094451904 funcGetArgs°threeDots: 0.0083849430084229 threeDots°callUserFuncArray: 0.014037847518921 threeDots°threeDots: 0.0078508853912354
Output for 5.6.20
funcGetArgs°callUserFuncArray: 0.010260820388794 funcGetArgs°threeDots: 0.0068340301513672 threeDots°callUserFuncArray: 0.011960029602051 threeDots°threeDots: 0.0069680213928223
Output for 5.6.19
funcGetArgs°callUserFuncArray: 0.014477968215942 funcGetArgs°threeDots: 0.0093679428100586 threeDots°callUserFuncArray: 0.015461921691895 threeDots°threeDots: 0.0086479187011719
Output for 5.6.18
funcGetArgs°callUserFuncArray: 0.014472961425781 funcGetArgs°threeDots: 0.0093920230865479 threeDots°callUserFuncArray: 0.015261888504028 threeDots°threeDots: 0.0085411071777344
Output for 5.6.17
funcGetArgs°callUserFuncArray: 0.013139963150024 funcGetArgs°threeDots: 0.008256196975708 threeDots°callUserFuncArray: 0.013818025588989 threeDots°threeDots: 0.0077710151672363
Output for 5.6.16
funcGetArgs°callUserFuncArray: 0.014992952346802 funcGetArgs°threeDots: 0.0094630718231201 threeDots°callUserFuncArray: 0.015748023986816 threeDots°threeDots: 0.0087788105010986
Output for 5.6.15
funcGetArgs°callUserFuncArray: 0.014120101928711 funcGetArgs°threeDots: 0.0087020397186279 threeDots°callUserFuncArray: 0.014901161193848 threeDots°threeDots: 0.008202075958252
Output for 5.6.14
funcGetArgs°callUserFuncArray: 0.01459813117981 funcGetArgs°threeDots: 0.0093929767608643 threeDots°callUserFuncArray: 0.015407085418701 threeDots°threeDots: 0.0082051753997803
Output for 5.6.13
funcGetArgs°callUserFuncArray: 0.014960050582886 funcGetArgs°threeDots: 0.0099248886108398 threeDots°callUserFuncArray: 0.014876127243042 threeDots°threeDots: 0.0084340572357178
Output for 5.6.12
funcGetArgs°callUserFuncArray: 0.01274299621582 funcGetArgs°threeDots: 0.0082600116729736 threeDots°callUserFuncArray: 0.013783931732178 threeDots°threeDots: 0.0077450275421143
Output for 5.6.11
funcGetArgs°callUserFuncArray: 0.010325908660889 funcGetArgs°threeDots: 0.0068528652191162 threeDots°callUserFuncArray: 0.012025117874146 threeDots°threeDots: 0.0070080757141113
Output for 5.6.10
funcGetArgs°callUserFuncArray: 0.015423059463501 funcGetArgs°threeDots: 0.010020971298218 threeDots°callUserFuncArray: 0.015356063842773 threeDots°threeDots: 0.008620023727417
Output for 5.6.9
funcGetArgs°callUserFuncArray: 0.015131950378418 funcGetArgs°threeDots: 0.0098440647125244 threeDots°callUserFuncArray: 0.014071941375732 threeDots°threeDots: 0.0070700645446777
Output for 5.6.8
funcGetArgs°callUserFuncArray: 0.015192031860352 funcGetArgs°threeDots: 0.0096240043640137 threeDots°callUserFuncArray: 0.015949010848999 threeDots°threeDots: 0.0087928771972656
Output for 5.6.7
funcGetArgs°callUserFuncArray: 0.015015840530396 funcGetArgs°threeDots: 0.009537935256958 threeDots°callUserFuncArray: 0.01560378074646 threeDots°threeDots: 0.0087201595306396
Output for 5.6.6
funcGetArgs°callUserFuncArray: 0.016157150268555 funcGetArgs°threeDots: 0.010051965713501 threeDots°callUserFuncArray: 0.016288995742798 threeDots°threeDots: 0.0090541839599609
Output for 5.6.5
funcGetArgs°callUserFuncArray: 0.015438079833984 funcGetArgs°threeDots: 0.0092580318450928 threeDots°callUserFuncArray: 0.01542592048645 threeDots°threeDots: 0.0086169242858887
Output for 5.6.4
funcGetArgs°callUserFuncArray: 0.015326023101807 funcGetArgs°threeDots: 0.010399103164673 threeDots°callUserFuncArray: 0.016249895095825 threeDots°threeDots: 0.0093569755554199
Output for 5.6.3
funcGetArgs°callUserFuncArray: 0.016557931900024 funcGetArgs°threeDots: 0.0099279880523682 threeDots°callUserFuncArray: 0.016481876373291 threeDots°threeDots: 0.0091979503631592
Output for 5.6.2
funcGetArgs°callUserFuncArray: 0.016618967056274 funcGetArgs°threeDots: 0.010355949401855 threeDots°callUserFuncArray: 0.016771078109741 threeDots°threeDots: 0.0096349716186523
Output for 5.6.1
funcGetArgs°callUserFuncArray: 0.012869834899902 funcGetArgs°threeDots: 0.0083189010620117 threeDots°callUserFuncArray: 0.013976097106934 threeDots°threeDots: 0.0078699588775635
Output for 5.6.0
funcGetArgs°callUserFuncArray: 0.015008926391602 funcGetArgs°threeDots: 0.009458065032959 threeDots°callUserFuncArray: 0.015586853027344 threeDots°threeDots: 0.0086970329284668
Output for 5.4.0 - 5.5.35
Parse error: syntax error, unexpected '.', expecting '&' or variable (T_VARIABLE) in /in/Qdcbv on line 3
Process exited with code 255.
Output for 5.1.0 - 5.3.29
Parse error: syntax error, unexpected '.', expecting '&' or T_VARIABLE in /in/Qdcbv on line 3
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected '.', expecting '&' or T_VARIABLE in /in/Qdcbv on line 3
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected '.', expecting ')' in /in/Qdcbv on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Parse error: parse error, unexpected '.', expecting ')' in /in/Qdcbv on line 3
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `')'' in /in/Qdcbv on line 3
Process exited with code 255.