PHP中很少使用却功能强大的函数
发布时间:2020-12-13 20:50:14 所属栏目:PHP教程 来源:网络整理
导读:call_user_func_array 让参数以数组的形式调用一个函数 call_user_func 调用一个存在的函数 create_function 建立一个函数 func_get_arg 获取函数中某个参数的值 func_get_args 获取函数的所有参数并组成数组 func_num_args 获取一个函数的参数个数 function
call_user_func_array — 让参数以数组的形式调用一个函数 call_user_func — 调用一个存在的函数 create_function — 建立一个函数 func_get_arg — 获取函数中某个参数的值 func_get_args — 获取函数的所有参数并组成数组 func_num_args — 获取一个函数的参数个数 function_exists — 判定一个函数是否存在 get_defined_functions — 获取已有的函数信息 register_shutdown_function — 注册一个页面载入完成后运行的函数 register_tick_function — 注册一个按要求调用的函数 unregister_tick_function — 取消一个按要求调用的函数 get_defined_functions可以获取所有的PHP函数和自定义的函数: <?php function a(){} $b = get_defined_functions(); print_r($b); //也许会显示1000多个已定义了的函数:) ?> function_exists函数判定一个函数是否存在(可以是PHP函数,也可以是自定义函数)。 <?php if (function_exists('a')) { echo "yes"; } else { echo "no"; } function a(){} // 显示 yes ?> call_user_func函数类似于一种特别的调用函数的方法,使用方法如下: <?php 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,也是满有新意的: <?php class a { function b($c) { echo $c; } } call_user_func(array("a","b"),"111"); //显示 111 ?> call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰: <?php function a($b,$c) { echo $b; echo $c; } call_user_func_array('a',array("111","222")); //显示 111 222 ?> call_user_func函数和call_user_func_array函数都支持引用,这让他们和普通的函数调用更趋于功能一致: <?php function a(&$b) { $b++; } $c = 0; call_user_func('a',&$c); echo $c;//显示 1 call_user_func_array('a',array(&$c)); echo $c;//显示 2 ?> func_num_args函数可以获取函数接受到参数的数量: <?php function a() { echo func_num_args(); } a(111,222,333); //显示 3 ?> func_get_arg函数可以获取某一个传递过来参数的值,在下面的例子中,在函数中并没有具体说明有哪些参数会被接受,利用func_get_arg还可以获取额外的参数: <?php function a() { echo func_get_arg(1); } a (111,333); //显示 222 ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |