一点背景:在运行时,我希望能够检查当前调用的函数javadoc样式文档,以确定其正式(类型化)声明。这将允许在调试和测试期间通过反射(代价)检查运行时类型(对于简单和复杂类型),我会发现非常有帮助。
因此,在php中我希望在任何其他函数即将被调用时调用用户定义的函数。也就是说,如果函数foo()被调用,我想在之前调用我的callHookHandler()函数。
一种解决方案是在所有用户定义的类中实现__call(),但这既笨拙又不包括对类外定义的函数的支持,所以我正在寻找更好的解决方案。
答案 0 :(得分:5)
答案 1 :(得分:1)
挂钩函数调用的另一种方法是使用名称空间的技巧:Intercepting Execution of System Functions in PHP
你也可以使用Go!框架,用于定义自动拦截系统功能执行的方面。