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 基本语法格式
Dec 15 PHP
基于php在各种web服务器的运行模式详解
Jun 03 PHP
php结合ajax实现赞、顶、踩功能实例
May 12 PHP
php cookie名使用点号(句号)会被转换
Oct 23 PHP
9个实用的PHP代码片段分享
Jan 22 PHP
php绘图之在图片上写中文和英文的方法
Jan 24 PHP
自己写的php中文截取函数mb_strlen和mb_substr
Feb 09 PHP
php使用array_search函数实现数组查找的方法
Jun 12 PHP
php阿拉伯数字转中文人民币大写
Dec 21 PHP
PHP的Yii框架中使用数据库的配置和SQL操作实例教程
Mar 17 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
Laravel 前端资源配置教程
Oct 18 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项目的方法
2006/10/09 PHP
调试一段PHP程序时遇到的三个问题
2012/01/17 PHP
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
2013/04/08 PHP
解析php dirname()与__FILE__常量的应用
2013/06/24 PHP
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
2017/02/23 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
客户端脚本中常常出现的一些问题和调试技巧
2007/01/09 Javascript
Javascript实现的分页函数
2007/02/07 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
JS中的form.submit()不能提交表单的错误原因
2014/10/08 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
jQuery中:only-child选择器用法实例
2015/01/03 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
2016/07/04 Javascript
jQuery滑动到底部加载下一页数据的实例代码
2017/05/22 jQuery
JS设计模式之数据访问对象模式的实例讲解
2017/09/30 Javascript
js+canvas实现验证码功能
2020/09/21 Javascript
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
python代码制作configure文件示例
2014/07/28 Python
Python之父谈Python的未来形式
2016/07/01 Python
python日期时间转为字符串或者格式化输出的实例
2018/05/29 Python
面向初学者的Python编辑器Mu
2018/10/08 Python
如何用Python和JS实现的Web SSH工具
2021/02/23 Python
Ted Baker英国官网:男士和女士服装及配件
2017/03/13 全球购物
全球酒店比价网:HotelsCombined
2017/06/20 全球购物
最好的商品表达自己:Cafepress
2019/09/04 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
香奈儿美国官网:CHANEL美国
2020/05/20 全球购物
分别介绍一下Session Bean和Entity Bean
2015/03/13 面试题
我未来的职业规划范文
2014/01/11 职场文书
班级课外活动总结
2014/07/09 职场文书
小学教师师德整改措施
2014/09/29 职场文书
中小学校园安全广播稿
2014/09/29 职场文书
体检通知范文
2015/04/21 职场文书
会议室使用管理制度
2015/08/06 职场文书
祝福语集锦:给妹妹结婚的祝福语
2019/12/18 职场文书