>  기사  >  백엔드 개발  >  Laravel 5.4.36에서 세션이 성공적으로 저장되지 않은 경우 수행할 작업

Laravel 5.4.36에서 세션이 성공적으로 저장되지 않은 경우 수행할 작업

小云云
小云云원래의
2018-02-22 09:57:431322검색

Laravel은 PHP 프레임워크입니다. laravel을 사용할 때 세션 사용 문제가 발생합니다. 직장에서는 세션의 기본 파일 캐시가 사용됩니다. session()->put("key","values") 没有设置成功,最后翻源码发现是使用文件缓存时候需要使用save() 메소드가 데이터베이스에 유지될 수 있습니다.

소스 코드: Vendor/laravel/framework/src/Illuminate/Session/Store.php


/**
  * Save the session data to storage.
  *
  * @return bool
  */
 public function save()
 {
  $this->ageFlashData();

  $this->handler->write($this->getId(), $this->prepareForStorage(
   serialize($this->attributes)
  ));
  $this->started = false;
 }

파일 캐싱 사용으로 인해 쓰기 메소드 호출의 소스 코드: Vendor/laravel/framework/src /Illuminate/Session/FileSessionHandler.php


/**
  * {@inheritdoc}
  */
 public function write($sessionId, $data)
 {
  $this->files->put($this->path.'/'.$sessionId, $data, true);

  return true;
 }

관련 권장 사항:

Laravel 5.4 세션 유효성 검사 문제

php 세션 세션 redis에 작성하는 방법

PHP 세션 역직렬화 취약점에 대한 자세한 설명

위 내용은 Laravel 5.4.36에서 세션이 성공적으로 저장되지 않은 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.