<?php
class A {
public function foo( $foo ) {
var_dump( func_get_args() );
}
}
class B extends A {
public function foo( $foo ) {
$args = func_get_args();
call_user_func_array( array( $this, 'parent::foo' ), $args );
}
}
$b = new B();
$b->foo( 'a', 'b', 'c' );
Deprecated: Callables of the form ["B", "parent::foo"] are deprecated in /in/15dEY on line 12
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
}
Warning: call_user_func_array(): First argument is expected to be a valid callback, 'B::parent::foo' was given in /in/15dEY on line 12
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/15dEY on line 4
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/15dEY on line 4
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/15dEY on line 4
Process exited with code 255.