php 动态执行带有参数的类方法


Posted in PHP onApril 10, 2009

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

<?php 
// 使用了NameSpace的例子 
namespace Foobar; 
class Foo { 
static public function test() { 
print "Hello world!\n"; 
} 
} 
call_user_func(__NAMESPACE__ .'\Foo::test'); // As of PHP 5.3.0 
// Hello world! 
call_user_func(array(__NAMESPACE__ .'\Foo', 'test')); // As of PHP 5.3.0 
// Hello world! 
?>

<?php 
// 直接调用方法的例子 
class myclass { 
static function say_hello() 
{ 
echo "Hello!\n"; 
} 
} 
$classname = "myclass"; 
call_user_func(array($classname, 'say_hello')); 
call_user_func($classname .'::say_hello'); // As of 5.2.3 
?>

那么,如果是普通的方法,而且,方法带有参数该怎么办?
以下是笔者写的一个小例子,供参考:
<?php 
// 执行带有参数的类 
class Loveapple{ 
public function sayHello($a, $b){ 
echo "Hello:".$a.". ".$b."\n"; } 
} 
$obj = new Loveapple(); 
//执行结果 Hello:loveapple. Using instance. 
call_user_func(array($obj, "sayHello"), "loveapple", "Using instance."); 
//执行结果 Hello:loveapple. Using class name. 
call_user_func(array("Loveapple", "sayHello"), "loveapple", "Using class name."); 
?>
PHP 相关文章推荐
PHP安全配置
Oct 09 PHP
php5新改动之短标记启用方法
Sep 11 PHP
PHP cron中的批处理
Sep 16 PHP
php在字符串中查找另一个字符串
Nov 19 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
Nov 22 PHP
PHP房贷计算器实例代码,等额本息,等额本金
Apr 01 PHP
PHP框架自动加载类文件原理详解
Jun 06 PHP
PHP基于pdo的数据库操作类【可支持mysql、sqlserver及oracle】
May 21 PHP
PHP yield关键字功能与用法分析
Jan 03 PHP
PHP结合Redis+MySQL实现冷热数据交换应用案例详解
Jul 09 PHP
thinkphp5框架路由原理与用法详解
Feb 11 PHP
Laravel的加密解密与哈希实例讲解
Mar 24 PHP
PHP获取类中常量,属性,及方法列表的方法
Apr 09 #PHP
php 随机生成10位字符代码
Mar 26 #PHP
php SQL之where语句生成器
Mar 24 #PHP
php cookie 作用范围?不要在当前页面使用你的cookie
Mar 24 #PHP
php xml实例 留言本
Mar 20 #PHP
php xml文件操作实现代码(二)
Mar 20 #PHP
php xml文件操作代码(一)
Mar 20 #PHP
You might like
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
探讨捕获php错误信息方法的详解
2013/06/09 PHP
php中数字0和空值的区别分析
2014/06/05 PHP
用jquery实现学校的校历(asp.net+jquery ui 1.72)
2010/01/01 Javascript
跟着JQuery API学Jquery 之二 属性
2010/04/09 Javascript
深入理解JavaScript系列(16) 闭包(Closures)
2012/04/12 Javascript
js中substring和substr的定义和用法
2014/05/05 Javascript
jquery获取选中的文本和值的方法
2014/07/08 Javascript
javascript函数式编程实例分析
2015/04/25 Javascript
JavaScript简单遍历DOM对象所有属性的实现方法
2015/10/21 Javascript
JavaScript实现简单的tab选项卡切换
2016/01/05 Javascript
JS简单实现String转Date的方法
2016/03/02 Javascript
基于JS实现发送短信验证码后的倒计时功能(无视页面刷新,页面关闭不进行倒计时功能)
2016/09/02 Javascript
使用JS代码实现点击按钮下载文件
2016/11/12 Javascript
Bootstrap禁用响应式布局的实现方法
2017/03/09 Javascript
js导出Excel表格超出26位英文字符的解决方法ES6
2017/11/15 Javascript
js中innerText/textContent和innerHTML与target和currentTarget的区别
2019/01/21 Javascript
vue框架下部署上线后刷新报404问题的解决方案(推荐)
2019/04/03 Javascript
详解Vue.js中引入图片路径的几种方式
2019/06/17 Javascript
详解JWT token心得与使用实例
2019/08/02 Javascript
简单文件操作python 修改文件指定行的方法
2013/05/15 Python
Python脚本实现自动将数据库备份到 Dropbox
2017/02/06 Python
Python实现简单生成验证码功能【基于random模块】
2018/02/10 Python
python使用response.read()接收json数据的实例
2018/12/19 Python
python使用opencv对图像mask处理的方法
2019/07/05 Python
Python使用Pandas库实现MySQL数据库的读写
2019/07/06 Python
Python定时任务工具之APScheduler使用方式
2019/07/24 Python
python连接手机自动搜集蚂蚁森林能量的实现代码
2021/02/24 Python
Interrail法国:乘火车探索欧洲,最受欢迎的欧洲铁路通票
2019/08/27 全球购物
Spotahome意大利:公寓和房间出租
2020/02/21 全球购物
智能电子应届生求职信
2013/11/10 职场文书
互联网创业计划书的书写步骤
2014/01/28 职场文书
运动会演讲稿
2014/05/07 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
创业计划书之游泳馆
2019/09/16 职场文书
Django Paginator分页器的使用示例
2021/06/23 Python