我动态调用的一系列函数有点像这样:
$function = 'someFunction';
$x = $function();
..但是,如果函数需要参数,并且我没有在调用中对其进行编码,我似乎崩溃了页面。例如:
function someFunction( $in_param1 ) {
return "SUCCESS";
}
$function = 'someFunction';
// this next line does not work
$x = $function() or die("error");
我该如何处理这类错误?
谢谢 -
答案 0 :(得分:5)
您可以使用set_error_handler函数捕获此信息:
function handle_errors( $errno, $errstr )
{
die( "Your error will be caught here" );
}
set_error_handler( "handle_errors" );
$function = 'someFunction';
$x = $function();
答案 1 :(得分:3)
答案 2 :(得分:2)
您可以使用所需参数的默认值重新定义您的函数,例如
function someFunction( $in_param1=null ) {
return "SUCCESS";
}
答案 3 :(得分:1)
我不知道有关抑制的信息,但您可以通过ReflectFunction
类获取有关函数的更多信息。
<?php
function foo($a, $b, $c) {}
$func = new ReflectionFunction('foo');
echo $func->getNumberOfParameters();
输出“3”。