我有两个函数,一个解析发送给函数的所有参数,另一个函数实际执行该信息。
因此function1()
可以接受任意数量的参数,然后使用func_get_args()
获取所有参数并处理它们以提出字符串。但是,我有一个function2()
我希望有一个类似的功能,但之后添加了一些额外的东西。基本上,第二个函数将保存一条信息,该信息将被第一个函数覆盖为临时变量,然后执行第一个函数,并继续执行该函数的其余部分。那么当在第二个函数中调用时,如何将发送到function2()
的所有参数发送到function1()
?我觉得我可能会过度思考这个问题,并且可能会有一种更简单的方法。
修改
我称之为此功能:
function2("arg1", "arg2", "arg3");
在该函数内部,我需要将这些参数发送到function1,如下所示:
function2() {
$old = $this->name;
function1("arg1", "arg2", "arg3");
}
和function1将进行处理,因此function2可以继续。第一个函数更改了类中的name变量,所以我需要事先临时存储它(在函数完成后我不再需要它)。所以基本上我们只是将发送到function2的参数并将它们插入到function1中。
答案 0 :(得分:4)
我不确定我是否理解正确...但我认为您应该将call_user_func_array("function1", func_get_args())
添加到function2()
答案 1 :(得分:0)
您尝试解决问题的方法难以强烈描述,这表明这不是一种理想的方法。
您的问题描述建议使用两个不同但相关的函数处理数据集。你谈到一个临时变量由两个函数操作,可能还有两个函数相互调用。
这表明需要一个类来包装这些操作集,其中包含保存原始数据集所需的一个或多个属性,输出数据集和任意数量的临时变量以及一组执行所需操作的清晰方法