PHP变量函数

介绍

如果变量名称的前面带有括号(带有或不带有参数),则PHP解析器将尝试查找名称与变量值相对应的函数并执行该函数。这样的函数称为可变函数。此功能在实现回调,函数表等时很有用。

不能使用诸如include,require,echo等语言构造来构建可变函数。不过,可以使用函数包装器找到一种变通方法。

可变功能示例

在下面的示例中,变量的值与name函数匹配。因此,可以通过在变量前面加上括号来调用该函数

示例

<?php

function hello(){

   echo "Hello World";

}

$var="Hello";

$var();

?>

输出结果

这将产生以下结果。-

Hello World

这是带有参数的变量函数的另一个示例

示例

<?php

function add($x, $y){

   echo $x+$y;

}

$var="add";

$var(10,20);

?>

输出结果

这将产生以下结果。-

30

在以下示例中,要输入的功能名称由用户输入

示例

<?php

function add($x, $y){

   echo $x+$y;

}

function sub($x, $y){

   echo $x-$y;

}

$var=readline("enter name of function: ");

$var(10,20);

?>

输出结果

这将产生以下结果。-

enter name of function: add

30

可变方法示例

变量函数的概念可以扩展到类中的方法

示例

<?php

class myclass{

   function welcome($name){

      echo "Welcome $name";

   }

}

$obj=new myclass();

$f="welcome";

$obj->$f("Amar");

?>

输出结果

这将产生以下结果。-

Welcome Amar

静态方法也可以通过可变方法技术来调用

示例

<?php

class myclass{

   static function welcome($name){

      echo "Welcome $name";

   }

}

$f="welcome";

myclass::$f("Amar");

?>

输出结果

现在这将引发异常,如下所示:

Welcome Amar

以上是 PHP变量函数 的全部内容, 来源链接: utcz.com/z/321691.html

回到顶部