摘自PHP手册[4] – Function Handling Functions

简介:PHP中处理函数的函数(Function Handling Functions),下面本人只对几个比较常用的函数做详细说明。

call_user_func — 调用一个存在的函数
call_user_func_array — 调用一个函数并以数组形式的传参

  
  
  1. //以上两个函数比较相似,只是传入参数的方式不同而已。
  2. function phpha_com($a, $b){
  3. echo $a + $b;
  4. }
  5. call_user_func('phpha_com', 1, 2); // 3
  6. call_user_func_array('phpha_com', array(1, 2)); // 3
  7. //另外如果调用类中的方法,则以数组形式:
  8. //天涯PHP博客 http://blog.phpha.com
  9. class phpha{
  10. public function phpha_com($a, $b){
  11. echo $a + $b;
  12. }
  13. }
  14. call_user_func(array('phpha', 'phpha_com'), 1, 2); // 3
  15. call_user_func_array(array('phpha', 'phpha_com'), array(1, 2)); // 3

create_function — 创建一个匿名函数
func_get_arg — 获取函数中某个参数的值
func_get_args — 获取函数的所有参数并组成数组
func_num_args — 获取一个函数的参数个数

function_exists — 判定一个函数是否存在

  
  
  1. // phpha_func.php
  2. <?php
  3. function phpha($a, $b){
  4. echo $a + $b;
  5. }
  6. ?>
  7. // test.php
  8. <?php
  9. if( ! function_exists('phpha')){
  10. include 'phpha_func.php';
  11. }
  12. phpha(1, 2); // 3
  13. ?>

get_defined_functions — 可以获取所有的PHP函数和自定义的函数

  
  
  1. <?php
  2. var_dump(get_defined_functions());
  3. ?>

register_shutdown_function — 注册一个页面载入完成后运行的函数
register_shutdown_function 执行机制是:PHP把要调用的函数调入内存。当页面所有PHP语句都执行完成时,再调用此 函数。注意,在这个时候从内存中调用,不是从PHP页面中调用,所以上面的例子不能使用相对路径,因为PHP已经当原来的页面不存在了。就没有什么相对路径可言。
注意:register_shutdown_function 是指在执行完所有PHP语句后再调用函数,不要理解成客户端关闭流浏览器页面时调用函数。
天涯PHP博客 http://blog.phpha.com
可以这样理解调用条件:
1、当页面被用户强制停止时
2、当程序代码运行超时时
3、当PHP代码执行完成时
【天涯注】可以用来做PHP计划任务,当然更好的方法是交给linux服务器来处理,不过因使用虚拟主机而没有服务器权限的用户可以尝试。

register_tick_function — 注册一个按要求调用的函数
unregister_tick_function — 取消一个按要求调用的函数

来源: http://blog.phpha.com/archives/890.html
标签:         

Posted under: PHP, PHP手册

Tagged as: , , ,


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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值