ホームページ >バックエンド開発 >PHPチュートリアル >Laravel プロジェクトはセッションの問題を他のプロジェクトと共有します
ここで要約させてください、もしかしたら将来誰かがそれを必要とするかもしれません、
実際、Laravel のセッションは PHP に付属するセッションマネージャーを使用しません。しかし、私は完全に自分自身で1つを実現しました。
これは、従来の意味での session_set_save_handler を使用するカスタム セッション プロセッサではなく、完全に自分で実装されることに注意してください。
したがって、別の ThinkPHP プロジェクトとセッションを共有する問題を解決するのは非常に簡単です~
Laravel で PHP に付属するセッション (session_start) を開始するだけです。
これはコードコメントです。「Laravelセッションは、くだらないものであるため、いかなる形でもPHPの「ネイティブ」セッションを利用しないことに注意してください。」
Laravelは、いかなる形でもPHPの「ネイティブ」セッションを利用しないことに注意してください。セッション、ダサいから。
さて、あとはくだらないセッションを始めるだけです。
by kankana
上記はlaravelから他のプログラムのセッションにアクセスする方法です
以下はlaravelのセッション(ファイル)に外部からアクセスする方法です
laravelのセッションドライバをfileに設定するとこれらのセッションがアクセスされます。ファイルはjson形式でapp/storage/sessionsに保存されます
重要なのは、対応するセッションファイルを見つける方法です
このファイル名は暗号化された形式でCookieのlaravel_sessionに保存されます
このファイル名を取得するには、
1、まずこのライブラリをインストールします:
https://github.com/illuminate/encryption
2、app/config/app.phpにある暗号化キー
keyを取得します。 3,
$encrypter = new IlluminateEncryptionEncrypter($key);
$session_filename = $encrypter->decrypt($_COOKIE['laravel_session']);
まさにその通りです。
===== ========= ===================
==================== ============ ======
プロジェクト間でセッションを共有するためのベスト プラクティスは、セッション情報を Redis またはデータベースに保存することです。プロジェクトは Redis またはデータベースを読み取るだけで済みます。データベース