【发布时间】:2013-12-15 21:33:34
【问题描述】:
假设我有这门课。
class foo{
function a(){
return $this;
}
}
我将其实例化为:
$O = new foo();
$O->a()
->a()
->a();
有什么方法可以知道,在最后一个函数->a() 之前它被调用了多少次?
所以,我可以输出'method ->a() has been called twice before this.'
我想找出这一点,而不使用像声明属性这样的增量值,然后每次在函数中调用它时递增它。
如果 OOP 中存在可以提供此解决方案的隐藏功能,我只是在跳跃
【问题讨论】:
-
增量属性有什么问题? AFAIK 在 任何 OO 语言中都没有这样的“隐藏功能”。
-
你为什么不想增加一个计数器?为什么会有隐藏功能呢?
-
我的意思是,我不够熟练,不知道 OOP 是否真的支持这个功能。
-
这与一般的 OOP 有什么关系?如果您可以神奇地跟踪调用方法或函数的频率,那将是一种语言功能。它与 OOP 并没有真正的关系,对于函数式编程或过程式编程,可能会问同样的问题。只需为它实现一个计数器...
标签: php oop method-chaining