zoukankan      html  css  js  c++  java
  • php匿名函数小示例

    <?php
    //$fun = function($params){
    //    echo $params;
    //};
    //
    //$fun('aa');
    
    
    //例一
    //在普通函数中定义一个匿名函数
    //function printStr(){
    //    $fun = function($something){
    //        echo $something;
    //    };
    //    $fun('something');
    //
    //}
    //printStr();
    
    
    //例子二
    //在普通函数中定义一个匿名函数,并将其返回
    //function printStr(){
    //    $fun = function($something){
    //        echo $something;
    //    };
    //    return $fun;
    //}
    //$printString = printStr();
    //$printString('aaaaddd');
    
    
    //例子三
    //把匿名函数当做参数传递
    //function printStr($fun,$a){
    //    $fun($a);
    //}
    //
    //$fun = function($str){
    //    echo $str;
    //};
    //printStr($fun,'ddsdddd');
    
    
    //闭包需要使用use才可以引用上下文的变量
    //function getMoney(){
    //    $a = 1;
    //    $b = 2;
    //    $fun = function() use ($a,$b) {
    //        echo $a;
    //        echo $b;
    //    };
    //    $fun();
    //}
    //
    //getMoney();
    
    
    //闭包不能改变上下文的变量,除非使用&符号,下例输出11
    //function getMoney(){
    //    $a = 1;
    //    $fun = function() use ($a){
    //        echo $a;
    //        $a++;
    //    };
    //    $fun();
    //    echo $a;
    //}
    //getMoney();
    
    //带&符号的可以改变,下例输出12
    //function getMoney(){
    //    $a = 1;
    //    $fun = function() use (&$a){
    //        echo $a;
    //        $a++;
    //    };
    //    $fun();
    //    echo $a;
    //}
    //getMoney();
    
    
    //function getMoney(){
    //    $a = 1;
    //    $fun = function() use (&$a) {
    //        echo $a;
    //        $a++;
    //    };
    //    return $fun;
    //}
    //
    //$getMoney = getMoney();
    //$getMoney();
    //$getMoney();
    //$getMoney();
    
    //函数嵌套 function funca(){ function funcb(){ echo 'aa'; } funcb(); } funca(); funcb();
  • 相关阅读:
    不怕路长,只怕心老——走在IT行业的路上
    python中 r'', b'', u'', f'' 的含义
    WSGI接口
    HTTP协议简介
    Flask中的Session
    一个 android 开机自动启动功能的例子
    遍历 JObject各属性(CSharp2)
    ASP.NET 伪随机数函数避免重复一例
    浏览器环境下 ES6 的 export, import 的用法举例
    在浏览器环境使用js库(不用require功能)
  • 原文地址:https://www.cnblogs.com/walter371/p/4535063.html
Copyright © 2011-2022 走看看