致命错误:无法使用call_user_func()

时间:2016-07-28 09:41:16

标签: php function

我试图在组中执行几个测试,其中每个测试都是包含两个函数的.php文件。问题是来自给定组的每个测试都具有相同名称的清理功能(例如test10_cleanup,其中10是组号)。 执行此代码后:

$dir = __DIR__ . "/tests/";
$tests = array_slice(scandir($dir), 2);

foreach ($tests as $test) {  
  include("{$dir}{$test}");
  $arr = get_defined_functions();

  //Weird Note: user defined functions are in reverse order
  //cleanup function is in array's first element
  call_user_func($arr["user"][1]);
  call_user_func($arr["user"][0]);

  unset($arr);
}

似乎取消设置并重新获得当前定义的功能并不能清除以前的功能。那么,是否可以使用过程代码而不是使用OOP来修复,或者我应该直接为每个测试文件执行一个新的php进程?

0 个答案:

没有答案