zoukankan      html  css  js  c++  java
  • PHP函数总结 (五)

    <?php
        /**
         * 回调函数:
         *  指调用函数时并不是传递一个标准的变量作为参数,而是将另一个函数作为参数传递到调用的函数中
         *  使用回调函数可以 将一段自己定义的功能传到函数内部使用
         * 1. 变量函数(可变函数)
         *      变量后面有圆括号,PHP将寻找与变量的值同名的函数,并尝试执行
         */
    
        // 变量函数
        function one(){
            echo 'one';
        }
        function two(){
            echo 'two';
        }
        function say($words){
            echo $words;
        }
        $a = 'one';
        $a();
        echo '<hr>';
        $a = 'two';
        $a();
        echo '<hr>';
    
    
        /**
         * 借助变量函数,声明一个回调函数
         * @param callback $func 传递一个函数名称字符串作为参数
         */
        function whattodo($func){
            $func();
        }
    
        whattodo('one');
        echo '<hr>';
    
        /**
         * 借助call_user_func_array(callable $callback , array $param_arr ),自定义回调函数
         * 调用回调函数,并把一个数组参数作为回调函数的参数
         */
        function whattodo2(){
            call_user_func_array('say',array('hello word'));
        }
    
        whattodo2();
        echo '<hr>';
    
        /**
         * 借助call_user_func(callable $callback [, mixed $parameter [, mixed $... ]]),自定义回调函数
         * 把第一个参数作为回调函数调用
         */
        function whattodo3(){
            call_user_func('say','hello word!');
        }
    
        whattodo3();
        echo '<hr>';
    
        /**
         * 类中静态函数和对象的方法回调:
         *    回调类中的成员犯法:第一个参数必须使用数组,并且指定两个元素
         */
        class Demo{
            static function eat($food){
                echo $food;
            }
        }
        // 类名称字符串
        call_user_func_array(array("Demo","eat"),array('rice'));
    call_user_func_array("Demo::eat", array('rice'));
    echo '<hr>'; class Demo2{ function play($play){ echo $play; } } $obj = new Demo2(); // 对象引用 call_user_func_array(array($obj,"play"),array('play games'));

    call_user_func_array(array(new Demo2(),"play"),array('play games'));
    分情破爱始乱弃,流落天涯思别离。 如花似玉负情意,影如白昼暗自迷。 随风浮沉千叶落,行色匆匆鬓已稀。
  • 相关阅读:
    JSF
    filter用户例子
    分析LogFilter
    理解session
    了解xml文件
    软件工程期末项目总结
    阅《软件工程》——之感
    自我介绍
    期末课程设计《天猫后台管理系统》
    JSON
  • 原文地址:https://www.cnblogs.com/cshaptx4869/p/8878220.html
Copyright © 2011-2022 走看看