3v4l.org

run code in 300+ PHP versions simultaneously
<?php class A { function foo($a, $b) {} } function row($name, $t) { printf("%-40s %4.2s x 10 µs\n", $name, (microtime(true)-$t)*1e5); } $max = 5*1e1; $object = new A; $t = microtime (true); for ($i=0; $i<$max; $i++) { $object->foo(1, 'foo'); } row($max.' x A::foo', $t); $t = microtime (true); for ($i=0; $i<$max; $i++) { call_user_func_array(array($object, 'foo'), array(1, 'foo')); } row($max.' x call_user_func_array', $t); $t = microtime (true); $ref = new ReflectionMethod($object, 'foo'); for ($i=0; $i<$max; $i++) { $ref->invokeArgs($object, array(1, 'foo')); } row($max.' x ReflectionMethod::invokeArgs', $t); $t = microtime (true); for ($j=0; $j<$max/10; $j++) { $ref = new ReflectionMethod($object, 'foo'); for ($i=0; $i<10; $i++) { $ref->invokeArgs($object, array(1, 'foo')); } } row(($max/10).' x (10 x ReflectionMethod::invokeArgs)', $t);
Output for 7.2.2, 7.2.4 - 7.2.5, 7.2.9, 7.2.12, 7.3.1
50 x A::foo 2. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 1. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.2.11, 7.3.0
50 x A::foo 2. x 10 µs 50 x call_user_func_array 0. x 10 µs 50 x ReflectionMethod::invokeArgs 1. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.1.7, 7.2.7, 7.2.13
50 x A::foo 1. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 1. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.2.1, 7.2.10
50 x A::foo 2. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 7.2.8
50 x A::foo 2. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 7.1.25, 7.2.6
50 x A::foo 2. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.0.20, 7.2.3
50 x A::foo 3. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 7.2.0
50 x A::foo 2. x 10 µs 50 x call_user_func_array 2. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.1.5 - 7.1.6
50 x A::foo 3. x 10 µs 50 x call_user_func_array 2. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 7.1.0
50 x A::foo 1. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 7.0.14
50 x A::foo 1. x 10 µs 50 x call_user_func_array 2. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 7.0.6
50 x A::foo 1. x 10 µs 50 x call_user_func_array 2. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 7.0.5
50 x A::foo 0. x 10 µs 50 x call_user_func_array 0. x 10 µs 50 x ReflectionMethod::invokeArgs 1. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.0.4
50 x A::foo 1. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.0.2 - 7.0.3
50 x A::foo 1. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 1. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 7.0.1
50 x A::foo 1. x 10 µs 50 x call_user_func_array 0. x 10 µs 50 x ReflectionMethod::invokeArgs 1. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 7.0.0
50 x A::foo 1. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 5.6.28
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.5.26 - 5.5.28, 5.6.9, 5.6.21
50 x A::foo 2. x 10 µs 50 x call_user_func_array 6. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.6.20
50 x A::foo 2. x 10 µs 50 x call_user_func_array 6. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.2.9, 5.4.27, 5.6.19
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.6.18
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 5.5.29, 5.5.31, 5.6.17
50 x A::foo 1. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 2. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 5.6.11, 5.6.16
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.45, 5.5.25, 5.6.10, 5.6.12, 5.6.15
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.6.14
50 x A::foo 2. x 10 µs 50 x call_user_func_array 6. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.6.13
50 x A::foo 3. x 10 µs 50 x call_user_func_array 6. x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.6.8
50 x A::foo 3. x 10 µs 50 x call_user_func_array 6. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.6.7
50 x A::foo 1. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 5.4.31, 5.5.30, 5.5.32, 5.5.35
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.5.34
50 x A::foo 1. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 5.5.33
50 x A::foo 4. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8. x 10 µs
Output for 5.5.24
50 x A::foo 1. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.38, 5.4.44
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.43
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.0, 5.4.6, 5.4.32, 5.4.42
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.41
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8. x 10 µs
Output for 5.4.39 - 5.4.40
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.37
50 x A::foo 3. x 10 µs 50 x call_user_func_array 12 x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.4.36
50 x A::foo 6. x 10 µs 50 x call_user_func_array 24 x 10 µs 50 x ReflectionMethod::invokeArgs 18 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 19 x 10 µs
Output for 5.4.35
50 x A::foo 4. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7. x 10 µs
Output for 5.4.34
50 x A::foo 3. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7. x 10 µs
Output for 5.4.30
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.29
50 x A::foo 4. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.28
50 x A::foo 2. x 10 µs 50 x call_user_func_array 6. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.11, 5.4.26
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.25
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.4.24
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1. x 10 µs
Output for 5.4.23
50 x A::foo 3. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.4.22
50 x A::foo 7. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.27, 5.4.7, 5.4.16, 5.4.21
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.20
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.4.19
50 x A::foo 3. x 10 µs 50 x call_user_func_array 10 x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.4.18
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.17
50 x A::foo 4. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.15
50 x A::foo 3. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.14
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10 x 10 µs
Output for 5.3.12, 5.4.13
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.1.4, 5.4.12
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.0, 5.4.9 - 5.4.10
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.5, 5.3.10, 5.3.17, 5.3.22, 5.3.25, 5.4.8
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.4.5
50 x A::foo 3. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9. x 10 µs
Output for 5.4.2, 5.4.4
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.3
50 x A::foo 2. x 10 µs 50 x call_user_func_array 7. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.4.1
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.3.29
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.3.28
50 x A::foo 3. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.15, 5.3.26
50 x A::foo 4. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.24
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.2.1, 5.2.3, 5.2.11, 5.2.14 - 5.2.15, 5.3.23
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.21
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.20
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7. x 10 µs
Output for 5.3.19
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 11 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.3.18
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.16
50 x A::foo 4. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.14
50 x A::foo 3. x 10 µs 50 x call_user_func_array 11 x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.13
50 x A::foo 2. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.11
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.3.8 - 5.3.9
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.7
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 14 x 10 µs
Output for 5.3.6
50 x A::foo 2. x 10 µs 50 x call_user_func_array 3. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.4
50 x A::foo 2. x 10 µs 50 x call_user_func_array 2. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.3.3
50 x A::foo 2. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.3.2
50 x A::foo 2. x 10 µs 50 x call_user_func_array 1. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2. x 10 µs
Output for 5.3.1
50 x A::foo 2. x 10 µs 50 x call_user_func_array 2. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.2.17
50 x A::foo 6. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.2.16
50 x A::foo 4. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.2.13
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9. x 10 µs
Output for 5.2.12
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.2.10
50 x A::foo 3. x 10 µs 50 x call_user_func_array 10 x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.2.8
50 x A::foo 2. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 8. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4. x 10 µs
Output for 5.2.7
50 x A::foo 3. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.2.6
50 x A::foo 3. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.2.5
50 x A::foo 2. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.2.4
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6. x 10 µs
Output for 5.2.2
50 x A::foo 3. x 10 µs 50 x call_user_func_array 13 x 10 µs 50 x ReflectionMethod::invokeArgs 6. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9. x 10 µs
Output for 5.2.0
50 x A::foo 6. x 10 µs 50 x call_user_func_array 17 x 10 µs 50 x ReflectionMethod::invokeArgs 11 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8. x 10 µs
Output for 5.1.6
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.1.5
50 x A::foo 3. x 10 µs 50 x call_user_func_array 9. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.1.3
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 4. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.1.2
50 x A::foo 3. x 10 µs 50 x call_user_func_array 5. x 10 µs 50 x ReflectionMethod::invokeArgs 5. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3. x 10 µs
Output for 5.1.1
50 x A::foo 3. x 10 µs 50 x call_user_func_array 4. x 10 µs 50 x ReflectionMethod::invokeArgs 7. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.1.0
50 x A::foo 3. x 10 µs 50 x call_user_func_array 14 x 10 µs 50 x ReflectionMethod::invokeArgs 3. x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5. x 10 µs
Output for 5.0.4 - 5.0.5
50 x A::foo 4. x 10 µs 50 x call_user_func_array 9. x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/mLthn on line 28
Process exited with code 255.
Output for 5.0.3
50 x A::foo 4. x 10 µs 50 x call_user_func_array 16 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/mLthn on line 28
Process exited with code 255.
Output for 5.0.1 - 5.0.2
50 x A::foo 4. x 10 µs 50 x call_user_func_array 8. x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/mLthn on line 28
Process exited with code 255.
Output for 5.0.0
50 x A::foo 6. x 10 µs 50 x call_user_func_array 9. x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/mLthn on line 28
Process exited with code 255.
Output for 4.4.9
50 x A::foo 5. x 10 µs 50 x call_user_func_array 17 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.4.8
50 x A::foo 8. x 10 µs 50 x call_user_func_array 18 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.10, 4.4.0, 4.4.2, 4.4.4, 4.4.7
50 x A::foo 5. x 10 µs 50 x call_user_func_array 8. x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.4.6
50 x A::foo 6. x 10 µs 50 x call_user_func_array 10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.11, 4.4.3, 4.4.5
50 x A::foo 5. x 10 µs 50 x call_user_func_array 9. x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.4.1
50 x A::foo 6. x 10 µs 50 x call_user_func_array 8. x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.3, 4.3.7, 4.3.9
50 x A::foo 4. x 10 µs 50 x call_user_func_array 9. x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.8
50 x A::foo 4. x 10 µs 50 x call_user_func_array 10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.6
50 x A::foo 4. x 10 µs 50 x call_user_func_array 12 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.5
50 x A::foo 7. x 10 µs 50 x call_user_func_array 16 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.4
50 x A::foo 6. x 10 µs 50 x call_user_func_array 14 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.2
50 x A::foo 4. x 10 µs 50 x call_user_func_array 8. x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Process exited with code 255.
Output for 4.3.1
50 x A::foo 4.4999999999962 x 10 µs 50 x call_user_func_array 9.5000000000012 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26
Output for 4.3.0
50 x A::foo 5.4999999999916 x 10 µs 50 x call_user_func_array 6.4000000000064 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/mLthn on line 26

preferences:
145.06 ms | 401 KiB | 191 Q