Blogger Information
Blog 61
fans 1
comment 0
visits 70009
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
0612-PHP匿名和闭包函数
我的博客
Original
660 people have browsed it

实例

//demo9 : 匿名函数和闭包函数:
        //闭包函数:有权访问另一个函数作用域中变量的函数,创建闭包的常见方式,就是在一个函数内部创建另一个函数;
        //匿名函数:就是一个没有名称的函数,他的函数直接赋值给一个变量;

        //1、匿名函数 ,结尾必须加分号。

$name = '我是一个大坏蛋';

echo 'demo9_1:<br>';
$good = function (){

    return '我是一个好人';
};
echo $good() . '<hr>';

$qq = '******************************************************';
echo 'demo9_1_1:<br>';
// 匿名函数使用use(外部变量)来在内部使用
$good1 =function() use($name){
    return 'good1 = '.$name;
};

echo $good1().'<hr>';

$qq = '******************************************************';
echo 'demo9_2:<br>';
        //2、闭包函数 : ues() 只是获取父作用域中的变量,需要层层传递 ,闭包有两种方式
$msg = 'hello';
$ms = function()use($msg){
    $name = '王霸';

     echo $msg;
     echo "\n---------\n";
    $ui = function () use($msg,$name){   //闭包方式1:函数赋值给变量
   // return function() use($msg,$name) {   //闭包方式2 ,没有函数名就得直接用return
      echo $msg . ' : ' ;
      echo $name;

    };
    echo $ui();     //闭包方式1 在函数内部调用,外部调用一次就可
};
echo $ms() . '<hr>';   //方式1 调用
//echo $ms()(); //方式2 调用


//demo10 : 数组内容排序
echo 'demo10:<br>';

$arr1 = [5,2,7,3,1,10,8,3,2,5];
    //var_dump($arr1);

  usort($arr1,function($a,$b)
    {
        //return $a - $b;  //正序排列;
        return $a <=> $b;  //倒叙排列  -或者 <=>都可以,后者是PHP7.0新语法

    });

print_r($arr1);

运行实例 »

点击 "运行实例" 按钮查看在线实例


Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post