PHP callback函数使用方法和注意事项
程序员文章站
2023-12-26 23:55:15
在php中有些诸如 call_user_function() 或 usort() 的函数接受用户自定义的函数作为一个参数。callback 函数不仅可以是一个简单的函数,它...
在php中有些诸如 call_user_function() 或 usort() 的函数接受用户自定义的函数作为一个参数。callback 函数不仅可以是一个简单的函数,它还可以是一个对象的方法,包括静态类的方法。
一个 php 函数用函数名字符串来传递。您可以传递任何内建的或者用户自定义的函数,除了 array(), echo(), empty(), eval(), exit(), isset(), list(), print() 和 unset()。
一个对象的方法以数组的形式来传递,数组的 0 下标指明对象名,下标 1 指明方法名。
对于没有实例化为对象的静态类,要传递其方法,将数组 0 下标指明的对象名换成该类的名称即可。
callback 函数实例:
复制代码 代码如下:
<?php
// an example callback function
function my_callback_function() {
echo 'hello world!';
}
// an example callback method
class myclass {
function mycallbackmethod() {
echo 'hello world!';
}
}
// type 1: simple callback
call_user_func('my_callback_function');
// type 2: static class method call
call_user_func(array('myclass', 'mycallbackmethod'));
// type 3: object method call
$obj = new myclass();
call_user_func(array($obj, 'mycallbackmethod'));
?>
http://www.phpe.net/manual/language.pseudo-types.php
http://cn.php.net/manual/en/language.pseudo-types.php
推荐阅读
-
PHP中array_keys和array_unique函数源码的分析_PHP
-
PHP __autoload函数(自动载入类文件)的使用方法
-
PHP字符串比较函数strcmp()和strcasecmp()使用总结,strcmpstrcasecmp_PHP教程
-
PHP字符串截取函数strlen和mb_strlen的区别,strlenmb_strlen_PHP教程
-
PHP操作文件类的函数代码(文件和文件夹创建,复制,移动和删除)_php技巧
-
简介WordPress中用于获取首页和站点链接的PHP函数
-
php explode()函数的使用方法
-
JavaScript中各种编码解码函数的区别和注意事项_javascript技巧
-
Oracle LOWER() 和 UPPER()函数的使用方法
-
ThinkPHP中__initialize()和类的构造函数__construct()用法分析_php实例