日韩在线观看-日韩在线成人-日韩在线不卡视频-日韩在线不卡视频-国产精品99-国产精品99

全局變量

swoole 協程當中,我們都知道類似 $_GET$_SESSION 這樣的全局變量是不能安全使用的。原因是協程切換下會帶來數據污染問題。

驚喜

EasySwoolespl 包中,實現了一個 SplContextArray,并在主進程的位置,替換了這些全局變量,使得這些數據的訪問是安全的,并在請求結束后自動清理。從而我們可以在使用一些 FPM 環境下的組件包時沒有影響。

注意:該特性下面的注冊和使用示例需要你的框架 easyswoole/http 組件版本大于等于 2.0.0。如果用戶easyswoole/http 組件版本在 1.6 ~ 1.7.19 之間請查看 全局變量舊版本用法

注冊

<?php

namespace EasySwoole\EasySwoole;

use EasySwoole\EasySwoole\AbstractInterface\Event;
use EasySwoole\EasySwoole\Swoole\EventRegister;
use EasySwoole\Http\GlobalParam\Hook;
use EasySwoole\Session\FileSession;
use EasySwoole\Session\Session;

class EasySwooleEvent implements Event
{
    public static function initialize()
    {
        date_default_timezone_set('Asia/Shanghai');

        // 配置 session,設置 session 數據文件存儲目錄為 EASYSWOOLE_TEMP_DIR
        # $sesionHandler = new FileSession(EASYSWOOLE_TEMP_DIR . '/Session');

        $globalParamHook = new Hook();

        // 如果不需要使用 session 請勿注冊
        // 使用時請先參考 session 章節 http://www.bluecrab.cn/HttpServer/session.html,新增 \App\Tools\Session 類文件。
        # \App\Tools\Session::getInstance($sesionHandler);
        # $globalParamHook->enableSession(Session::getInstance());

        $globalParamHook->register();

        // onRequest v3.4.x+
        \EasySwoole\Component\Di::getInstance()->set(\EasySwoole\EasySwoole\SysConst::HTTP_GLOBAL_ON_REQUEST, function (\EasySwoole\Http\Request $request, \EasySwoole\Http\Response $response) use ($globalParamHook) {
            // 替換全局變量
            $globalParamHook->onRequest($request, $response);
        });

        // afterRequest v3.4.x+
        \EasySwoole\Component\Di::getInstance()->set(\EasySwoole\EasySwoole\SysConst::HTTP_GLOBAL_AFTER_REQUEST, function (\EasySwoole\Http\Request $request, \EasySwoole\Http\Response $response) {

        });
    }

    public static function mainServerCreate(EventRegister $register)
    {

    }
}

事件注冊完畢后,即可使用 $_GET$_COOKIE$_POST$_FILES$_SERVER$_SESSION

使用

<?php

namespace App\HttpController;

use EasySwoole\Http\AbstractInterface\Controller;

class Index extends Controller
{
    function index()
    {
        var_dump($_GET['a']);
        var_dump($_SERVER);
    }
}

注意

該特性需要 2.0.0 版本以上的 http 組件庫

"easyswoole/http": "^2.0.0"
主站蜘蛛池模板: 我是你舅舅| 林智妍三级全部电影| 洪金宝电影大全| 但愿人长久| 故事电影| 洪熙官演员表| 我未成年 电影| 抗日电影大全免费观看| 翁姆| 南来北往电视剧剧情| 小镇姑娘高清播放| 接吻戏| 人机头像| 勇者义彦| ab变频器中文说明书| 小女孩屁股| 张韶涵个人简历| 熊出没之雪岭熊风 2015 张伟 | 北风那个吹全集免费观看| 教育向美而生读书心得体会| 苑琼丹三级| 包公大战潘金莲| 孤独感爆满的头像| 新烈火情挑| 大奉打更人电视剧在线| 黄色网址视频| 弦月梦影| 男人不可以穷演员表| 假男假女 电影| 抖抖2| 铁血使命电视剧演员表| 陈昱| www.douyin.com| 朝雪录电视剧免费观看全集完整版 | 钱串子图片| 混沌行走| 色戒在线观看视频| 搜狐手机网首页新闻| 山西电视台今天电视节目表| 王渝萱演过的所有影视作品| 赌侠 1990 刘德华|