php自定义函数call_user_func和call_user_func_array详解

来源:互联网 发布:百度网盘搜索源码 编辑:程序博客网 时间:2024/05/23 19:05

在laravel中找到call_user_func和call_user_func_array函数,然后百度下他的用法,在此做下记录:

用法:

function a($b,$c) { echo $b; echo $c; } call_user_func('a', "111","222"); call_user_func('a', "333","444"); //显示 111 222 333 444 ?> 

好像是一种特别的函数调用的方法!

调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的: 

class a { function b($c) { echo $c; } } call_user_func(array("a", "b"),"111"); //显示 111 ?> 

然后看call_user_func_array()这个函数

call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰: 


function a($b, $c) { echo $b; echo $c; } call_user_func_array('a', array("111", "222")); //显示 111 222 ?> 

call_user_func_array函数也可以调用类内部的方法的 
Class ClassA { function bc($b, $c) { $bc = $b + $c; echo $bc; } } call_user_func_array(array('ClassA','bc'), array("111", "222")); //显示 333 ?> 



0 0
原创粉丝点击