这 有点 晚了,但我只想指出,自PHP 5.3起,实际上有可能在不使用PHP扩展的情况下覆盖内部函数。
诀窍是您可以在名称空间内重新定义内部PHP函数。它基于PHP对函数进行名称解析的方式:
在名称空间(例如A B)内部,对不合格函数的调用在运行时解决。解决调用foo()的方法如下:
- 它从当前名称空间中查找一个函数:A B foo()。
- 它尝试查找并调用全局函数foo()

这 有点 晚了,但我只想指出,自PHP 5.3起,实际上有可能在不使用PHP扩展的情况下覆盖内部函数。
诀窍是您可以在名称空间内重新定义内部PHP函数。它基于PHP对函数进行名称解析的方式:
在名称空间(例如A B)内部,对不合格函数的调用在运行时解决。解决调用foo()的方法如下: