如何创建每次调用公共方法时都会调用的方法?你也可以说这是一个 post-method-call-hook。
我当前的代码:
<?php
class Name {
public function foo() {
echo "Foo called\n";
}
public function bar() {
echo "Bar called\n";
}
protected function baz() {
echo "Baz called\n";
}
}
$name = new Name();
$name->foo();
$name->bar();
此代码中的当前输出将是:
Foo called
Bar called
我希望每次调用另一个公共方法时都调用 baz() 方法。例如
Baz called
Foo called
Baz called
Bar called
我知道我可以做这样的事情:
public function foo() {
$this->baz();
echo "Foo called\n";
}
但这并不能真正解决我的问题,因为这并不是真正的正交,如果我有 100 个方法需要在它们之前调用其他方法,那么实现起来会相对痛苦。