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

全局變量

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

驚喜

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

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

注冊(cè)

<?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,設(shè)置 session 數(shù)據(jù)文件存儲(chǔ)目錄為 EASYSWOOLE_TEMP_DIR
        # $sesionHandler = new FileSession(EASYSWOOLE_TEMP_DIR . '/Session');

        $globalParamHook = new Hook();

        // 如果不需要使用 session 請(qǐng)勿注冊(cè)
        // 使用時(shí)請(qǐng)先參考 session 章節(jié) http://www.b3f21.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)
    {

    }
}

事件注冊(cè)完畢后,即可使用 $_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 組件庫(kù)

"easyswoole/http": "^2.0.0"
主站蜘蛛池模板: 人人干视频 | wwwxxx在线| free性丰满hd性欧美720 | 黄色软件推荐下载 | 久久久一级| 麻豆国产在线 | 亚洲精品午夜久久久久久久 | 亚洲人午夜色婷婷 | 国产婷婷| 国产一级毛片高清视频完整版 | 青草视频在线观看视频 | 日韩av视屏| 日本中文字幕免费观看 | 成人小视频免费看 | 激情欧美亚洲 | 日韩成人免费在线视频 | 久久亚洲精品中文字幕蜜潮电影 | 高清一区二区 | 日韩第2页| 日本香蕉视频在线观看 | 成人性生交大片免费看冫视频 | 免费看a毛片 | 久久久国产成人一区二区三区 | 色操插| 日韩欧美中文字幕在线视频 | 色婷婷综合在线观看 | 亚洲视频自拍偷拍 | 国产色综合网 | 7788色淫网站免费观看 | 伊人久久在线 | 在线观看一区二区三区四区 | 在线免费观看亚洲 | 久久久久久久一区 | 91精品在线观看视频 | 98国产精品午夜免费福利视频 | av免费不卡| 91成人精品爽啪在线观看 | 中文字幕精品在线视频 | 91久久综合| 成人免费b2b网站大全在线 | 精品一区二区不卡 |