zoukankan      html  css  js  c++  java
  • 跟着百度学PHP[5]函数篇2-PHP中的特殊形式的函数

    目录......................................................

    .00x1 可变函数

    在PHP里面如果说将“函数名称”赋予字符串类型的变量。在调用这个变量的时候如果使用带有小括号,那么PHP就会将该作为函数解析。这就叫可变函数。
    注:可变函数不可以用于echo,print,unset(),isset(),empty(),include,require以及类似的语言结构,需要自己封装以后实现。

    .00x2 回调函数

    在一个函数1中调用另一个函数2的时候,将一个函数2当做参数传进去,并且在函数1中使用。

    .00x3 匿名函数

     顾简单的说就是没有函数名的,但是需要注意在大括号的后面也还要再加一个分号。

    .00x递归函数的使用

    函数体自己调用自己。 

    ...........................................................

    00x1 可变函数的使用
      在PHP里面如果说将“函数名称”赋予字符串类型的变量。在调用这个变量的时候如果使用带有小括号,那么PHP就会将该作为函数解析。这就叫可变函数。
      注:可变函数不可以用于echo,print,unset(),isset(),empty(),include,require以及类似的语言结构,需要自己封装以后实现。

    <?php 
    $a = 'md5';
    echo $a('hello world');
    echo "<br />";
    echo md5('hello world');
     ?>
    /*
    输出效果如下所示:
    5eb63bbbe01eeed093cb22bb8f5acdc3
    5eb63bbbe01eeed093cb22bb8f5acdc3
    */

    00x2 回调函数的使用

    在一个函数1中调用另一个函数2的时候,将一个函数2当做参数传进去,并且在函数1中使用。

    单个函数参数案例:

    <?php 
    function play(){
        echo "playing...<br />";
    }
    function study(){
        echo "studying...<br />";
    }
    function sing(){
        echo "singing...<br />";
    }
    function DoWhat($x){
        echo "she ";
        echo $x();
    }
    DoWhat('play');
     ?>
    /*输出结果如下所示:
    she playing...
    */

    多个函数参数案例:

    <?php 
    function study($username){
        echo $username." studying...<br />";
    }
    function play($username){
        echo $username." playing...<br />";
    }
    function eat($username){
        echo $username." eating...<br />";
    }
    function DoWhat($functionName,$param){ #可以理解成eat就是$functionname参数,$param就是eat函数里的$username参数。
        $functionName($param);
    }
    DoWhat('play',"望大牛");
     ?>

    使用回调函数实现加减运算:

    <?php 
    /*
    使用回调函数实现加减操作
     */
    function jiafa($x,$y){
        return $x + $y;
    }
    function jianfa($x,$y){
        return $x - $y;
    }
    function jiajian($suanfa,$q,$w){
        return $suanfa($q,$w);
    }
    echo jiajian('jianfa','2','3');
     ?>

    00x3 匿名函数的使用

     顾简单的说就是没有函数名的,但是需要注意在大括号的后面也还要再加一个分号。如下所示:

    <?php 
    $a = function(){ #再次处声明一个函数,并未声明函数名
        return "hello world";
    }; #记住这里要加一个分好!
    echo $a(); #输出的时候输出的是变量加括号。
    /**
     * 输出效果如下所示:
     * hello world
     */

    还有一种声明匿名函数的方法;

    <?php 
    $a = create_function('$x,$y', 'return $x + $y;'); #第一个参数是抽象参数,第二个是要执行的php语句。切记,后面的分号
    echo $a(1,2);#也切记这里的参数要加上去。
    /**
     * 输出效果如下所示:
     * 3
     */

    00x递归函数的使用

    函数体自己调用自己。 

    <?php 
    function test($x){
        echo $x."<br />"; #首先先输出$x
        --$x;             #让$x减一
        if($x>=0){        #如果$x大于等于0执行语句中的
            test($x);     #$x再次执行一下。这时候$x已经变成4了
    }
    echo test(5);
    /*
    输出效果如下所示
    5
    4
    3
    2
    1
    0
     */
  • 相关阅读:
    python 文件处理 -- 02 文件属性&标准输入输出&命令行参数&文件编码
    python 文件处理 -- 01 文件打开&读取&写入&关闭&指针
    python进阶-- 04 如何定制类
    python进阶-- 03 面向对象编程
    python进阶-- 02 如何使用模块
    python进阶-- 01 函数式编程
    python基础-- 08 迭代&列表生成式
    python基础-- 07 切片
    python基础-- 06 函数
    关于hanlp自定义词典的使用
  • 原文地址:https://www.cnblogs.com/xishaonian/p/6230744.html
Copyright © 2011-2022 走看看