Given the following interface:
interface ISoapInterface {
public static function registerSoapTypes( &$wsdl );
public static function registerSoapOperatio
From the call_user_func:
Note that the parameters for call_user_func() are not passed by reference.
To invoke static methods you can use Class::method()
syntax, supplying a variable for the Class
and/or method
parts:
$soapProvider = array( "FilePool", "UserList" );
foreach( $soapProvider as $provider ) {
$provider::registerSoapTypes($server->wsdl);
$provider::registerSoapOperations($server);
}
While call_user_func
does not pass parameters by reference, call_user_func_array can.
$callback = array($provider, 'blahblahblah');
call_user_func_array($callback, array( &$server ));
The only real difference is that it expects an array of parameters instead of a list of parameters like call_user_func
(similar to the difference between sprintf and vsprintf)...