PHP中的可变函数,使用场景有哪些?求说明

2个回答

东方 - 资深小编
擅长:互联网技术/编程

可变函数,简单说就是一种支持动态定义的函数。在PHP中,正常函数名是死的,固定不变,而可变函数呢,它可以更灵活地调用。

以我的编程经验认为,可变函数主要有两个使用场景。

第一个场景是:参数化批量执行

假设你的网站有很多模块,每个模块封装成了一个函数。你不想一次次调用,这时就可以考虑固定参数+循环,使用可变函数一次性trigger。例如:

for ($i=1; $i<=10; $i++) {
  $func = 'module'.$i;
  $func(); 
}

这种方式会批量执行module1()到module10()函数。参数再增加,行数也不变,很优雅。

第二个场景是:代码解耦

两个代码段之间不存在直接引用,这种情况,你可以通过可变函数,来进行间接调用。

例如D模块没有引入Y,就调用callFunc('Y_func'),统一接口,使二者解耦联动。

现在知道了吧?只要你运用恰当,可变函数在这些场景下还是大有用处的。

程序员老李 - 网友

可变函数主要用来批量执行参数,有利于减少重复代码,同时也方便二次修改。