@ 2014-02-22T01:14:42Z <?php
function run_test($name, $callback, $iterations)
{
$result = $callback();
echo "ran '$name' with result ", var_export($result, true), "\n";
}
class Foo {
}
class Bar {
function setup() {}
}
$method1 = function($test) {
return function () use ($test) {
if (method_exists($test, 'setup')) {
$test->setup();
}
};
};
$method2 = function($test) {
$func = method_exists($test, 'setup')
? function() use ($test) { $test->setup(); }
: function () {};
return function () use ($func) {
$func();
};
};
$method3 = function($test) {
$test = method_exists($test, 'setup')
? [$test, 'setup']
: function () {};
return function () use ($test) {
$test();
};
};
const ITERATIONS = 1;
run_test('foo1', $method1(new Foo()), ITERATIONS);
run_test('bar1', $method1(new Bar()), ITERATIONS);
run_test('foo2', $method2(new Foo()), ITERATIONS);
run_test('bar2', $method2(new Bar()), ITERATIONS);
run_test('foo3', $method3(new Foo()), ITERATIONS);
run_test('bar3', $method3(new Bar()), ITERATIONS);
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 5.4.0 - 5.4.45 , 5.5.0 - 5.5.38 , 5.6.0 - 5.6.28 , 7.0.0 - 7.0.20 , 7.1.0 - 7.1.33 , 7.2.0 - 7.2.33 , 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.28 , 8.2.0 - 8.2.18 , 8.3.0 - 8.3.6 ran 'foo1' with result NULL
ran 'bar1' with result NULL
ran 'foo2' with result NULL
ran 'bar2' with result NULL
ran 'foo3' with result NULL
ran 'bar3' with result NULL
Output for 5.3.0 - 5.3.29 Parse error: syntax error, unexpected '[' in /in/HKHqu on line 39
Process exited with code 255 . Output for 4.4.2 - 4.4.9 , 5.1.0 - 5.1.6 , 5.2.0 - 5.2.17 Parse error: syntax error, unexpected T_FUNCTION in /in/HKHqu on line 18
Process exited with code 255 . Output for 4.3.0 - 4.3.1 , 4.3.5 - 4.3.11 , 4.4.0 - 4.4.1 , 5.0.0 - 5.0.5 Parse error: parse error, unexpected T_FUNCTION in /in/HKHqu on line 18
Process exited with code 255 . Output for 4.3.2 - 4.3.4 Parse error: parse error in /in/HKHqu on line 18
Process exited with code 255 . preferences:dark mode live preview
221.99 ms | 401 KiB | 402 Q