3.5 变量函数
变量函数
PHP支持变量函数的概念,如果一个变量名称的后面带有圆括号,例如,$var()、$sunyang()等,虽然这些变量名称并不是一个合法的函数名称,但是一个类似于“$var()”的函数调用却可以正确执行。产生该情况的原因是PHP可以取出保存在$var变量中的值,在程序中寻找相同名称的函数,然后尝试调用执行该函数,这就是变量函数的工作原理。
下面是一个使用变量函数来实现计算某长方形面积的功能,代码如下:
代码3-10光盘\codes\第3章\3.5\var_function.php
<?php function calculate($length,$width){ $area=$length*$width; //计算面积 echo "长方形的长为:".$length."<br>"; echo "长方形的宽为:".$width."<br>"; echo "长方形的面积为:".$area; } $length = 10; $width = 5; $myFunction ="calculate"; $myFunction($length,$width); //调用变量函数myFunction() ?>
该程序被执行时,运行结果如图3-10所示。
图3-10 调用变量函数
变量函数的优点是可以增加程序的灵活性,但是滥用变量函数会降低PHP代码的可读性,使程序逻辑变得难以理解,为代码的维护带来极大的困难,甚至可能引发一系列的安全问题。所以在编程中应该尽量少用或者避免使用变量函数。