PHP - 如何在不使用空值的情况下重载函数

时间:2016-06-23 20:25:59

标签: php

我想拥有这个界面:

interface Resource_Controller_Interface {
    public function index_get():stdClass;
    public function index_get(mixed $key):array;
    public function index_post():bool;
    public function index_put(mixed $key):bool;
    public function index_patch(mixed $key):bool;
    public function index_delete(mixed $key):bool;
}

不幸的是,即使签名不同,我也不能做两个名为' index_get'的方法。

我真的希望这个界面有这些名字,有没有办法可以做到这一点? (使用$key = null不会强制执行......)

1 个答案:

答案 0 :(得分:1)

您可以使用func_num_args()func_get_arg()来获取传递的参数,并正常使用它们。

这样,函数名称将相同,但您可以使用某些条件执行不同的操作。