黄p网站_在线看中文字幕_亚洲电影免费观看_成人激情视频_欧美成视频_中国av在线

全局變量

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

驚喜

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

注意:該特性下面的注冊(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.edpy57.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 組件庫

"easyswoole/http": "^2.0.0"
主站蜘蛛池模板: 成人午夜在线 | 99爱视频| 国产精品久久久久久久久免费 | 中国特级黄色片 | 亚洲精品久久久久久下一站 | 久久久精品一区二区 | 九九色九九 | 欧美精品一区二区三区四区 | 色婷婷久久久swag精品 | 日日操操| 久久精品国产v日韩v亚洲 | 99看片| av免费观看网站 | 亚洲综合视频 | 成人av在线网 | 男女精品视频 | 精品久久一区 | 美日韩一区二区 | 欧美久久久久久 | 亚洲国产精品99久久久久久久久 | 美女视频一区二区三区 | 中文字幕av黄色 | 影视在线观看 | 精品中文字幕一区二区三区 | 欧美日韩一区二区三区 | 亚洲高清视频在线观看 | 狠狠做深爱婷婷综合一区 | 日韩在线| 男女免费视频 | 精品一二区| 成人午夜在线视频 | 欧美视频网站 | 99re视频在线观看 | 91小视频 | 一区二区三区四区精品 | 亚洲精品网址 | 精品国产乱码简爱久久久久久 | 国产精品一区二区久久 | 在线成人av | 久久99影视 | 欧美日韩国产一区二区三区 |