午夜免费_欧美一级免费看_欧美日韩一区二区视频在线观看_午夜视频在线_日本特黄a级高清免费大片_成年人黄色小视频

闭包函数

闭包的概念

闭包就是能够读取其他函数内部变量的函数。例如在javascript中,只有函数内部的子函数才能读取局部变量,所以闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。 在php中,闭包函数一般就是匿名函数. 举例,有一个定时任务,每一秒执行一次,现在我们要开启一个服务,然后准备在30秒的时候关闭这个服务

<?php
function tick($callback){
    while (1) {//简单实现的定时器,每秒都去执行一次回调
        call_user_func($callback);
        sleep(1);
    }
}
class Server
{
    //模拟退出一个服务
    public function exitServer()
    {
        return true;
    }
}
$server = new Server();
$time = time();
tick(function ()use($server) {
    $server->exitServer();
});

在这里面,使用匿名函数,use了函数外部的$server变量,才使得定时器能回调调用$server->exitServer();

匿名函数

匿名函数 通俗来讲,就是没有名字的函数,例如上面写的function(){},它通常作为闭包函数使用,使用方法如下:

<?php
$fun = function($name){
    printf("Hello %s\r\n",$name);
};
echo $fun('Tioncico');
function a($callback){
    return $callback();
}
a(function (){
    echo "EasySwoole\n";
    return 1;
});

use

PHP在默认情况下,匿名函数不能调用所在代码块的上下文变量,而需要通过使用use关键字。

<?php
function a($callback){
    return $callback();
}
$str1 = "hello,";
$str2 = "Tioncico,";
a(function ()use($str1,$str2){
    echo $str1,$str2,"EasySwoole\n";
    return 1;
});
主站蜘蛛池模板: 在线免费看毛片 | 亚洲黄色录像片 | 日本女优久久久 | 91亚洲精 | www.久久久.cum| 在线观看深夜福利 | 美女禁网站| 91亚洲国产成人久久精品网站 | 91高清视频在线 | 亚洲 欧美 另类 综合 偷拍 | 九色视频在线播放 | 午夜性色a√在线视频观看9 | 91国内视频在线 | 一区二区三区四区五区中文字幕 | 精品在线观看视频 | 九九九国产视频 | 久久久久久国产精品三级 | 亚洲美女在线播放 | 97热在线观看 | 91高清版 | 中国一级毛片在线播放 | 国产成人精品一区二区免费看京 | 九色网站在线观看 | 九色视频在线观看 | 亚洲综合国产一区 | 91官网在线观看 | 91亚洲国产成人久久精品网站 | 91精品在线免费观看视频 | 一区二区三区久久 | 午夜免 | 国产一区二区三区成人久久片老牛 | 亚州久久 | 91视频网页版 | 久久久久久久久久久久久国产 | 一区二区最新免费视频 | 91亚洲国产成人精品一区二三 | 免费看麻豆视频 | a在线一区| 制服丝袜日日夜夜 | 一区二区三区久久 | 亚洲精品久久久久国产 |