php中有一个特别调用函数的函数call_user_func(),此函数用起来非常的绕弯,下面就针对此函数来详细的说一下吧。
php call_user_func() 使用方法
1、call_user_func() 调用普通函数的方法
示例1:直接调用一个无传入参数的函数
<?php
function a(){
return 'feiniaomy.com';
}
echo call_user_func('a');
// feiniaomy.com
?>
示例2:调用一个带入传入参数的函数
<?php
//单个参数
function b($v){
return $v;
}
echo call_user_func('b','mochu');
//多个参数
function c($v,$y){
return $v.$y;
}
echo call_user_func('c','11','22');
?>
示例3:调一个预定义的函数
<?php
//调用函数 time()
echo call_user_func('time');
?>
示例4:调用一个匿名函数
<?php
call_user_func(function($v){
echo $v;
},'2222');
?>
复制
2、call_user_func() 调用类内的方法
示例1:
call_user_func() 调用类内的方法,使用的为 array,非常的奇特!
<?php
class a{
function b($c){
return $c;
}
}
echo call_user_func(array('a','b'),'mochu');
?>
示例2:
<?php
class Person{
public $name = "mochu";
public static function say(){
return "ok";
}
public static function say2($words){
return $words;
}
public function name(){
return $this->name;
}
public function call($num){
return $num;
}
}
$jack = new Person;
//调用类的方法
echo call_user_func([$jack,"name"]);
//调用类的方法带参数
echo call_user_func([$jack,"call"],'119');
//类的静态方法
echo call_user_func(['Person',"say"]);
//类的静态方法带参数
echo call_user_func(['Person',"say2"],'hello world');
?>
如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!
txttool.com 说一段 esp56物联 查询128 IP查询