我正在调用一个对象方法,通过call_user_func_array
该方法我根据几个参数传递动态字符串参数。
它目前看起来类似于:
<?php
class MyObject
{
public function do_Procedure ($arg1 = "", $arg2 = "")
{ /* do whatever */ }
public function do_Something_Else (AnotherObject $arg1 = null)
{ /* This method requires the first parameter to
be an instance of AnotherObject and not String */ }
}
call_user_func_array(array($object, $method), $arguments);
?>
这适用于方法$method = 'do_Procedure'
,但如果我想调用$method = 'do_Something_Else'
需要第一个参数作为实例的方法,AnotherObject
我会收到E_RECOVERABLE_ERROR
错误。
我怎么知道应该传递哪种类型的实例?例如,如果此方法需要一个对象实例,但第一个处理的参数是字符串,我如何识别它以便我可以传递 null 或者只是跳过调用?