php 定义动态参数吗,php 动态执行带有参数的类方法

本文通过示例详细介绍了在PHP中如何调用类的方法,包括静态方法和带有参数的方法。展示了如何使用`call_user_func`函数结合数组来动态调用类的静态方法和实例方法,并传递参数,适用于PHP5.3.0及以上版本。
摘要由CSDN通过智能技术生成

官方手册给出了以下范例:

复制代码代码如下:

//使用了NameSpace的例子

namespaceFoobar;

classFoo{

staticpublicfunctiontest(){

print"Helloworld!n";

}

}

call_user_func(__NAMESPACE__.'Foo::test');//AsofPHP5.3.0

//Helloworld!

call_user_func(array(__NAMESPACE__.'Foo','test'));//AsofPHP5.3.0

//Helloworld!

?>

复制代码代码如下:

//直接调用方法的例子

classmyclass{

staticfunctionsay_hello()

{

echo"Hello!n";

}

}

$classname="myclass";

call_user_func(array($classname,'say_hello'));

call_user_func($classname.'::say_hello');//Asof5.2.3

?>

那么,如果是普通的方法,而且,方法带有参数该怎么办?

以下是笔者写的一个小例子,供参考:

复制代码代码如下:

//执行带有参数的类

classLoveapple{

publicfunctionsayHello($a,$b){

echo"Hello:".$a.".".$b."n";

}

}

$obj=newLoveapple();

//执行结果Hello:loveapple.Usinginstance.

call_user_func(array($obj,"sayHello"),"loveapple","Usinginstance.");

//执行结果Hello:loveapple.Usingclassname.

call_user_func(array("Loveapple","sayHello"),"loveapple","Usingclassname.");

?>

您可能感兴趣的文章:php运行时动态创建函数的方法PHP使用方法重载实现动态创建属性的get和set方法PHP动态创建Web站点的方法用PHP动态创建Flash动画PHP动态地创建属性和方法,对象的复制,对象的比较,加载指定的文件,自动加载类文件,命名空间一个ASP创建动态对象的工厂类(类似PHP的stdClass)如何使用动态共享对象的模式来安装PHPPHP通过反射动态加载第三方类和获得类源码的实例PHP使用GIFEncoder类生成gif动态滚动字幕PHP使用GIFEncoder类生成的GIF动态图片验证码PHP动态随机生成验证码类代码php使用变量动态创建类的对象用法示例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值