给定一些用户定义函数的名称, 这些函数以字符串形式存储在变量中。任务是使用存储在变量中的名称来调用函数。
例子:
<
?php// Function without argument
function func() {
echo "geek" ;
}// Function with argument
function fun( $msg ) {
echo $msg ;
}// Call func and fun using $var and $var1
$var = "func" ;
$var1 = "fun" ;
?>
有两种方法可以执行此操作。一种是使用括号和参数通过变量名直接调用函数, 另一种是使用call_user_func()函数但是在这两种方法中都将使用变量名。
程序:
<
?php// Function without argument
function func() {
echo "hello " ;
}// Function with argument
function fun( $msg ) {
echo $msg . " " ;
}$var = "func" ;
$var1 = "fun" ;
// 1st method by using variable name
$var ();
$var1 ( "geek" );
echo "\n" ;
// 2nd method by using php inbuilt
// function call_user_func()
call_user_func( $var );
call_user_func( $var1 , "fun_function" );
?>
输出如下:
hello geek hello fun_function
另一种方法:
使用eval()函数:
eval()函数是PHP中的内置函数, 用于将字符串评估为PHP代码。
注意:
该方法是由
Vineet Joshi
.
语法如下:
eval( $code )
参数:此函数接受单个参数代码, 该参数代码用于将PHP代码保存为字符串。
例子:
<
?php// Function without argument
function writeMessage() {
echo "Welcome to srcmini!" ;
}// Declare variable and store
// function name
$functionName = "writeMessage();
" ;
// Function call using eval
eval ( $functionName );
?>
【PHP如何从存储在变量中的字符串调用函数()】输出如下:
Welcome to srcmini!
推荐阅读
- 如何在ReactJS中使用Material-UI更改图标的颜色()
- redis 持久化 RDB AOF
- #yyds干货盘点#Reactive访问Spring Data Redis
- shell脚本一键编译安装MySQL
- 字节跳动数据湖技术选型的思考与落地实践
- #yyds干货盘点#Python图像处理,cv2模块,OpenCV实现目标跟踪
- Alibaba中间件技术系列「Nacos技术专题」服务注册与发现相关的原理分析
- 开源远程终端神器Tabby安装设置
- 鸿蒙轻内核M核源码分析(LibC实现之Musl LibC)