laravel - 定义中间件时的Closure $next怎么理解
迷茫
迷茫 2017-05-16 16:54:35
[PHP讨论组]
<?php
    namespace App\Http\Middleware;
    use Closure;
    class TestMiddleware
    {      

        public function handle($request, Closure $next)
            if($request->input('age')<18)
                return redirect()->route('refuse');
            return $next($request);
        }
    }

上面这段代码中,
1) 第三行的use Closure 中的closure是类?怎么来的?
2)第六行的handle方法中 Closure $next是什么意思?
3)第9行的 $next($request),这是什么用法?$next到底是函数还是变量?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(2)
滿天的星座

Closure是php自带的用于代表匿名函数的类!!去php手册看看你就明白你问的这几个问题了。

PHP中文网

Closure 是php实现闭包(匿名函数)用的类。
http://php.net/manual/zh/class.closure.php
$next是绑定的函数。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号