可变函数名调用方式

来源:互联网 发布:淘宝情侣运动鞋 编辑:程序博客网 时间:2024/05/21 06:23
  在php中,可以用一个变量来保存函数名,然后通过这个变量来调用这个函数, 最近在做一个项目,用到了这点,总结了下,目前来说主要发现了以下三种方式:
  1.直接调用:
     $a = "var_dump";
     $a("laruence");
  2.使用call_user_func,但这个只能调用用户自定义的函数.
     $a = "function_defined_by_user";
     if(func_exists($a)){
         call_user_func($a, $paramters);
     }
  3.也就是借用PHP5新引入的一套Reflection API中的reflectionFunction:
     $func_name = "function_defined_by_user";
     try{
       $func = new reflectionFunction($func_name);
    }catch(ReflectionFuncionException $e){
       print $e->getMessage();
       exit;
    }
       $func->invoke($parameters);
  这套新API非常有趣,有趣的我想好好研究研究,参考手册中关于这套API的介绍:http://au2.php.net/oop5.reflection
原创粉丝点击