我可以用不同的参数声明相同的多个抽象方法吗?

时间:2011-02-19 23:17:53

标签: php abstract-class optional-parameters

我可以在php中的抽象类中以某种方式执行此操作:

    abstract function AddFilter();

    abstract function AddFilter( /*array*/ $c_array='', /*string*/ $url='')

    // ... etc...

使用可选参数/我该怎么做? 如果我只使用第二个,我得到'Declaration ofContent :: AddFilter()必须与ContentGeneric :: AddFilter()'

兼容

更新:好的...我的方法现在是在扩展的AddFilter()中添加一个单行回调函数,该函数可以工作但不是最好的,无论如何。

1 个答案:

答案 0 :(得分:3)

不,你不能这样做。 PHP不支持使用不同签名重载函数,例如C ++可以。如果您想模仿这样的事情,请查看__call() magic method