Вход Регистрация
Файл: gapps/vendor/laravel/framework/src/Illuminate/Session/CacheBasedSessionHandler.php
Строк: 83
<?php

namespace IlluminateSession;

use 
SessionHandlerInterface;
use 
IlluminateContractsCacheRepository as CacheContract;

class 
CacheBasedSessionHandler implements SessionHandlerInterface
{
    
/**
     * The cache repository instance.
     *
     * @var IlluminateContractsCacheRepository
     */
    
protected $cache;

    
/**
     * The number of minutes to store the data in the cache.
     *
     * @var int
     */
    
protected $minutes;

    
/**
     * Create a new cache driven handler instance.
     *
     * @param  IlluminateContractsCacheRepository  $cache
     * @param  int  $minutes
     * @return void
     */
    
public function __construct(CacheContract $cache$minutes)
    {
        
$this->cache $cache;
        
$this->minutes $minutes;
    }

    
/**
     * {@inheritdoc}
     */
    
public function open($savePath$sessionName)
    {
        return 
true;
    }

    
/**
     * {@inheritdoc}
     */
    
public function close()
    {
        return 
true;
    }

    
/**
     * {@inheritdoc}
     */
    
public function read($sessionId)
    {
        return 
$this->cache->get($sessionId'');
    }

    
/**
     * {@inheritdoc}
     */
    
public function write($sessionId$data)
    {
        return 
$this->cache->put($sessionId$data$this->minutes);
    }

    
/**
     * {@inheritdoc}
     */
    
public function destroy($sessionId)
    {
        return 
$this->cache->forget($sessionId);
    }

    
/**
     * {@inheritdoc}
     */
    
public function gc($lifetime)
    {
        return 
true;
    }

    
/**
     * Get the underlying cache repository.
     *
     * @return IlluminateContractsCacheRepository
     */
    
public function getCache()
    {
        return 
$this->cache;
    }
}
Онлайн: 1
Реклама