Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
263 views
in Technique[技术] by (71.8m points)

php - How can I get my session data inside my constructor function in the controller

This is a part of the code.

        class StudentController extends Controller
        {
                public function __construct(Request $request) 
                {
                    $school = session('school_data');

                    $this->middleware($school); 
                }
        }

Now, I've also tried checking the $school by using dd($school) but it returns null

NOTE: The session variable works in other functions inside the same controller.

question from:https://stackoverflow.com/questions/65836757/how-can-i-get-my-session-data-inside-my-constructor-function-in-the-controller

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

your sessions are not ready yet. if you want to use them, use like below:

class StudentController extends Controller
{
    public function __construct(Request $request) 
    {
        $this->middleware(function ($request, $next) {
            // fetch session and use it in entire class with constructor
            $this->school_data = session()->get('school_data');

            return $next($request);
        });
    }
}

from here: laravel - Can't get session in controller constructor


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

56.9k users

...