亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频

全局變量 (針對 easyswoole/http 在 1.6 ~ 2.0)

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

驚喜

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

注冊

<?php

namespace EasySwoole\EasySwoole;

use EasySwoole\EasySwoole\AbstractInterface\Event;
use EasySwoole\EasySwoole\Swoole\EventRegister;
use EasySwoole\Http\GlobalParamHook;
use EasySwoole\Session\SessionFileHandler;

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

        // 配置 session,設(shè)置 session 數(shù)據(jù)文件存儲目錄為 EASYSWOOLE_TEMP_DIR
        $handler = new SessionFileHandler(EASYSWOOLE_TEMP_DIR);

        GlobalParamHook::getInstance()->hookDefault();

        // 如果不需要 session 請勿注冊
        GlobalParamHook::getInstance()->hookSession($handler, 'easy_session', 'session_dir');

        // 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) {
            // 替換全局變量
            GlobalParamHook::getInstance()->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)
    {

    }
}

EasySwoole 3.4.x 版本之前:可在項目根目錄的 EasySwooleEvent.php 中看到 onRequestafterRequest 方法。

事件注冊完畢后,即可使用 $_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']);
        if (isset($_SESSION['b'])) {
            var_dump('last session is ' . $_SESSION['b']);
        }
        $_SESSION['b'] = time();
    }
}

注意

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

"easyswoole/http": "^1.6"
主站蜘蛛池模板: 国产一区二区在线看 | 国产高清色 | 日韩在线一区二区三区四区 | 欧美精品在线免费 | 欧美精品在线一区二区三区 | 精品国产一区二区三区小蝌蚪 | 日韩av成人 | 中文字幕 欧美 日韩 | 黄色欧美网站 | 蜜桃成人在线 | 放荡艳妇的疯狂呻吟中文视频 | www色综合| 久久99国产 | 欧美日韩视频一区二区三区 | 69亚洲精品久久久蜜桃 | 日韩一级一区 | 欧美日本91精品久久久久 | 91探花国产综合在线精品 | 欧美日韩三区 | 色之综合天天综合色天天棕色 | 国产在线网 | 黑人做爰全过程免费的视频播放 | 日本在线视频播放 | 31xx视频免费观看 | 六月天色婷婷 | 五月婷婷在线免费观看 | 一级毛片毛片 | 国产一区a | www.77伦理bt.com| 国内自拍xxx | 91精品免费视频 | 亚洲毛片av| 91在线91拍拍在线91 | 在线视频 亚洲 | 毛片视频在线免费观看 | 日韩亚洲精品在线 | 欧美精品在线观看 | 操老阿姨| 国产又粗又猛又爽又黄的三级视频 | 国产一区二区视频观看 | 91精品婷婷国产综合久久竹菊 |