Why php is more flexible ? See this function example:

Class Record { public function getMessage() { return "Hello world"; } } //You can call this function like this: $function = "getMessage"; $R = new Record; calluserfunc( array($R, $function ) );

If you want to pass some argument , you can use rest of the parameters of call-user_function;

eg: calluserfunc( array($R, $function ) , $param, $param2);

For more info: http://www.php.net/calluserfunc