"라라벨 EncryptedStore"의 두 판 사이의 차이

(새 문서: ==개요== ;라라벨 EncryptedStore <source lang='php'> <?php namespace Illuminate\Session; use SessionHandlerInterface; use Illuminate\Contracts\Encryption\DecryptException; use...)
 
잔글 (봇: 자동으로 텍스트 교체 (-</source> +</syntaxhighlight>, -<source +<syntaxhighlight ))
 
(다른 사용자 한 명의 중간 판 3개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
==개요==
;라라벨 EncryptedStore
;라라벨 EncryptedStore
* [[라라벨 Store]] 상속


<source lang='php'>
<syntaxhighlight lang='php'>
<?php
<?php


40번째 줄: 41번째 줄:
     }
     }
}
}
</source>
</syntaxhighlight>


==같이 보기==
==같이 보기==
* [[라라벨 Store]]
* [[라라벨 SessionManager]]
* [[라라벨 SessionManager]]


[[분류: Illuminate\Session]]
[[분류: Illuminate\Session]]

2020년 11월 2일 (월) 02:57 기준 최신판

1 개요[ | ]

라라벨 EncryptedStore
<?php

namespace Illuminate\Session;

use SessionHandlerInterface;
use Illuminate\Contracts\Encryption\DecryptException;
use Illuminate\Contracts\Encryption\Encrypter as EncrypterContract;

class EncryptedStore extends Store
{
    protected $encrypter;

    public function __construct($name, SessionHandlerInterface $handler, EncrypterContract $encrypter, $id = null)
    {
        $this->encrypter = $encrypter;
        parent::__construct($name, $handler, $id);
    }

    protected function prepareForUnserialize($data)
    {
        try {
            return $this->encrypter->decrypt($data);
        } catch (DecryptException $e) {
            return json_encode([]);
        }
    }

    protected function prepareForStorage($data)
    {
        return $this->encrypter->encrypt($data);
    }

    public function getEncrypter()
    {
        return $this->encrypter;
    }
}

2 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}