PHP通过字符串调用函数的代码

php中文网
发布: 2016-07-25 09:12:27
原创
989人浏览过

学习php通过字符串调用函数。

1. call_user_func

  1. function a($b,$c){
  2. echo $b;
  3. echo $c;
  4. }
  5. call_user_func('a', "111","222");
  6. call_user_func('a', "333","444");
  7. //显示 111 222 333 444
  8. ?>
复制代码

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

  1. class a {
  2. function b($c){
  3. echo $c;
  4. }
  5. } // www.jbxue.com
  6. call_user_func(array("a", "b"),"111");
  7. //显示 111
  8. ?>
复制代码

2. call_user_func_array

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

通义灵码
通义灵码

阿里云出品的一款基于通义大模型的智能编码辅助工具,提供代码智能生成、研发智能问答能力

通义灵码 31
查看详情 通义灵码

立即学习PHP免费学习笔记(深入)”;

  1. function a($b, $c){
  2. echo $b;
  3. echo $c;
  4. }
  5. call_user_func_array('a', array("111", "222"));
  6. //显示 111 222
  7. ?>
复制代码

call_user_func_array函数也可以调用类内部的方法的

  1. Class ClassA{
  2. function bc($b, $c) {
  3. $bc = $b + $c;
  4. echo $bc;
  5. }
  6. } // www.jbxue.com
  7. call_user_func_array(array('ClassA','bc'), array("111", "222"));
  8. //显示 333
  9. ?>
复制代码

call_user_func函数和call_user_func_array函数都支持引用,这让他们和普通的函数调用更趋于功能一致:

  1. function a(&$b){
  2. $b++;
  3. }
  4. $c = 0;
  5. call_user_func('a', &$c);
  6. echo $c;//显示 1
  7. call_user_func_array('a', array(&$c));
  8. echo $c;//显示 2
复制代码


PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号