4) { throw new LogicException("不允许的操作"); } } else { $value = $data[$key] ?? $defaultValue; } return $value; } /** * remove 的别名 * * @return bool */ static public function reset() { return self::remove(); } /** * 删除 ,remove 的别名 * * @return bool */ static public function delete() { return self::remove(); } /** * 去除,删掉整个Session的数据 * * @return bool */ static protected function remove() { return \Illuminate\Support\Facades\Cache::delete(static::getKey()); } static protected function set($key, $value = null) { self::getSessionId(); $data = \Illuminate\Support\Facades\Cache::get(static::getKey(), []); if (strpos($key, '.')) { $ks = explode('.', $key); if (count($ks) == 2) { $data[$ks[0]][$ks[1]] = $value; } if (count($ks) == 3) { $data[$ks[0]][$ks[1]][$ks[2]] = $value; } if (count($ks) == 4) { $data[$ks[0]][$ks[1]][$ks[2]] [$ks[4]] = $value; } if (count($ks) > 4) { throw new LogicException("不允许的操作"); } } else { $data[$key] = $value; } \Illuminate\Support\Facades\Cache::set(static::getKey(), $data, static::$ttl); return $data; } static protected function getKey() { return static::$prefix . static::$session_id . '_' . \UCore\Version::VERSION; } static public function checktoken($token) { if (strlen($token) != 32) { return false; } return true; } }