从另一个函数停止一个函数

时间:2011-03-08 03:39:43

标签: php function

在PHP中,我是否可以从内部函数中停止函数?,例如

function_1(){
   ......
function2();
....
}

我可以使用function2中的句子停止function1但是避免停止整个脚本吗?

2 个答案:

答案 0 :(得分:4)

如果捕获第二个函数的返回值,则可以执行此操作。

function my_first_function() {
  // some code
  if( !my_second_function() ) {
     return;
  }
}

function my_second_function() {
  return false;
}

my_first_function();

当然,您需要对其进行修改以满足您的需求,但这应该可以帮助您入门。

答案 1 :(得分:0)

您可以使用RunKit extension,它可以让您重新定义/重命名功能。默认情况下,它只允许在用户定义的函数上完成,但是有一个php.ini设置也可以为内部函数启用它。

那会让你做类似的事情:

runkit_function_rename('print', 'internal_print');
function print(...) {
   echo 'welcome to my own implementation of print';
}

然而,搞乱内部函数基本上可以破坏PHP,所以使用风险自负。