<?php
class A
{
public function testIsCallable(callable $param) {
return is_callable($param);
}
private function privateMethod() {
echo "This is a private method";
}
public function test($param) {
if ($this->testIsCallable($param)) {
$param();
}
}
}
class B extends A
{
public function test($param) {
if (is_callable($param)) {
$param();
}
}
}
$a = new A();
$b = new B();
$callable = [$a, 'privateMethod'];
$a->test($callable);
$b->test($callable);
Parse error: syntax error, unexpected '[' in /in/pOu8c on line 32
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Parse error: parse error, unexpected '[' in /in/pOu8c on line 32
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/pOu8c on line 5
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/pOu8c on line 5
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/pOu8c on line 5
Process exited with code 255.