php call_user_func的简介

WBOY
发布: 2016-06-23 14:30:42
原创
1017 人浏览过

mixed call_user_func ( callback $function [, mixed $parameter [, mixed $... ]] )

一个 PHP 函数用函数名字符串来传递。可以传递任何内置的或者用户自定义的函数,除了语言结构如array(),echo(),empty(),eval(),exit(),isset(),list(),print() 和 unset()。

一个对象的方法以数组的形式来传递,数组的下标 0 指明对象名,下标 1 指明方法名。

对于没有实例化为对象的静态类,要传递其方法,将数组 0 下标指明的对象名换成该类的名称即可。

除了普通的用户定义的函数外,也可以使用create_function()来创建一个匿名的回调函数(callback)。

 

<?php // 普通的回调函数function my_callback_function() {    echo 'hello world!';}// 回调方法class MyClass {    static function myCallbackMethod() {        echo 'Hello World!';    }}// Type 1: 简单的回调call_user_func('my_callback_function'); // Type 2: 静态类回调call_user_func(array('MyClass', 'myCallbackMethod')); // Type 3: 类方法回调$obj = new MyClass();call_user_func(array($obj, 'myCallbackMethod'));// Type 4: 调用类方法 (As of PHP 5.2.3)call_user_func('MyClass::myCallbackMethod');// Type 5: 相对静态类方法的调用(As of PHP 5.3.0)class A {    public static function who() {        echo "A\n";    }}class B extends A {    public static function who() {        echo "B\n";    }}call_user_func(array('B', 'parent::who')); // A?>
登录后复制

  

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!