zoukankan      html  css  js  c++  java
  • php函数:call_user_func

    前段时间浏览文档发现一个有意思的PHP函数:call_user_func 【文档地址】  

    函数作用:该函数主要用于通过函数名调用该函数

    例如:

    function test(){
        echo "hello world
    ";
    }
    
    $methodName = "test";
    
    call_user_func($methodName);

    上面的语句执行后相当于直接调用test(),不过是可以通过函数名来调用函数。同时也可以用这种方法来调用:

    $methodName = "test";
    $methodName();

    产生的结果是一样的,而且这种方法在性能上会比上面的方法好一点。

    除了调用函数,还可以调用对象的方法:

    class T{
        static public function test(){
            echo "hello world
    ";
        }
    }
    //php 5.3以前需要这样调用
    call_user_func("T::test");
    //php 5.3以后,可以将class和method传入一个数组再将数组传给call_user_func方法
    call_user_func(array("T", "test"));

    上面执行效果是一样的

    call_user_func还可以与匿名函数配合如:

    function call_func(){
        foreach(func_get_args() as $func){
            call_user_func($func);
        }
    }
    
    call_func(function(){
        echo "anonymous function
    ";
    });

    上面的函数还能同时调用多个函数

  • 相关阅读:
    计算机的基本存储单位
    挖坑
    HEOI2017 游记
    bzoj4815 [Cqoi2017]小Q的表格
    bzoj4817 [Sdoi2017]树点涂色
    hdu5824 graph
    4.5&4.7联考题解
    高飞
    无题
    51Nod 算法马拉松23 开黑记
  • 原文地址:https://www.cnblogs.com/aksir/p/6781201.html
Copyright © 2011-2022 走看看