PHP函数调用处理程序

时间:2012-08-23 10:20:35

标签: php function

php中有什么功能处理程序吗?就像我在PHP中调用任何函数一样。函数处理程序自动调用。

function add($i ,$j){
    $k = $i+$j;
    return $k;
}

因此,如果有人调用上面的函数,函数处理程序会自动执行。 就像我们在PHP中有其他函数会话save_handler或error_handler一样。

1 个答案:

答案 0 :(得分:1)

不,没有。你应该使用委托代替

function otherFunction ($i, $k) {
  foobar();
  return add($i, $j);
}

使用面向对象的设计,您还可以包装整个对象

class A {
  public function add($i, $j) { return $i + $j; }
}
class B extends A {
  public function add($i, $j) { $this->foobar(); return parent::add($i, $j);
  protected foobar() { /* do something useful */ }
}
// or
class C extends A {
  protected $_inner;
  public function __construct (A $inner) { $this->_inner = $inner; 0
  public function add($i, $j) { $this->foobar(); return $this->_inner->add($i, $j); }
  protected foobar() { /* do something useful */ }
}

或者像

这样的匿名函数
$add = function ($i, $j) {
  foobar();
  return add($i, $j);
};
$add(3, 7);