50 lines
647 B
PHP
50 lines
647 B
PHP
<?php
|
|
|
|
|
|
namespace HttpServer\Abstracts;
|
|
|
|
|
|
|
|
use Swoole\Coroutine;
|
|
|
|
abstract class BaseContext
|
|
{
|
|
protected static $pool = [];
|
|
|
|
static function get($key)
|
|
{
|
|
$cid = Coroutine::getuid();
|
|
if ($cid < 0)
|
|
{
|
|
return null;
|
|
}
|
|
if(isset(self::$pool[$cid][$key])){
|
|
return self::$pool[$cid][$key];
|
|
}
|
|
return null;
|
|
}
|
|
|
|
static function put($key, $item)
|
|
{
|
|
$cid = Coroutine::getuid();
|
|
if ($cid > 0)
|
|
{
|
|
self::$pool[$cid][$key] = $item;
|
|
}
|
|
|
|
}
|
|
|
|
static function delete($key = null)
|
|
{
|
|
$cid = Coroutine::getuid();
|
|
if ($cid > 0)
|
|
{
|
|
if($key){
|
|
unset(self::$pool[$cid][$key]);
|
|
}else{
|
|
unset(self::$pool[$cid]);
|
|
}
|
|
}
|
|
}
|
|
}
|