PHP如果调用函数,如何用另一个函数覆盖它

时间:2010-11-16 23:47:40

标签: php

  

可能重复:
  Override default php function

有没有办法检测是否正在调用函数并使用单独的函数覆盖?我不确定function_exists会这样做。

3 个答案:

答案 0 :(得分:1)

Override default php function

  

您可以使用命名空间来覆盖   现有的函数名称:

namespace blarg;
function basename() {
    return 'whatever';
}
$base = basename();
     

即,任何对basename()的调用   blarg命名空间将使用你的新命名空间   功能的版本。

答案 1 :(得分:0)

override_function()函数可能就是您所需要的,但它似乎很难看。

但是,使用命名空间或继承可能是更好的选择。

答案 2 :(得分:0)

你为什么这么想?对原始问题可能有更好的解决方案。

此外,您是否要覆盖内置的PHP函数,或者您自己编写的函数。它是对象或静态函数的方法吗?