找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1546|回复: 0
打印 上一主题 下一主题

php通过字符串调用函数示例

[复制链接]

2617

主题

2617

帖子

7789

积分

论坛元老

Rank: 8Rank: 8

积分
7789
跳转到指定楼层
楼主
发表于 2018-2-14 06:00:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

            1. call_user_func
[U]复制代码[/U] 代码如下:
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,也是满有新意的:
[U]复制代码[/U] 代码如下:
class a {
  function b($c){
    echo $c;
  }
}
call_user_func(array("a", "b"),"111");
//显示 111
?>
2. call_user_func_array
call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰:
[U]复制代码[/U] 代码如下:
function a($b, $c){
  echo $b;
  echo $c;
}
call_user_func_array('a', array("111", "222"));
//显示 111 222
?>
call_user_func_array函数也可以调用类内部的方法的
[U]复制代码[/U] 代码如下:
Class ClassA{
  function bc($b, $c) {
      $bc = $b + $c;
    echo $bc;
  }
}
call_user_func_array(array('ClassA','bc'), array("111", "222"));
//显示 333
?>
call_user_func函数和call_user_func_array函数都支持引用,这让他们和普通的函数调用更趋于功能一致:
[U]复制代码[/U] 代码如下:
function a(&$b){
  $b++;
}
$c = 0;
call_user_func('a', &$c);
echo $c;//显示 1
call_user_func_array('a', array(&$c));
echo $c;//显示 2
            
            
您可能感兴趣的文章:
  • PHP生成自定义长度随机字符串的函数分享
  • php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
  • php对包含html标签的字符串进行截取的函数分享
  • PHP数字和字符串ID互转函数(类似优酷ID)
  • PHP自带函数给数字或字符串自动补齐位数
  • php mb_substr()函数截取中文字符串应用示例
  • 利用PHP函数计算中英文字符串长度的方法
  • PHP字符串比较函数strcmp()和strcasecmp()使用总结
  • PHP中常用的字符串格式化函数总结
  • php常用字符串处理函数实例分析
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端