I am working on a laravel project that needs to work besides a custom php project, because that I need to get access to the pure php globals $_SESSION and $_COOKIE in the laravel app.
Until now I'm geting just null or empty. Somebody know how to do that?
Laravel has its own implementations of $_SESSION
and $_COOKIE
, so I'm afraid you cannot access them via those superglobals.
To try to overcome that, what you can do, in your Laravel app, is to transfer data from one to the other by doing something like:
foreach(Session::all() $key => $value)
{
$_SESSION[$key] = $value;
}
The answer for sessions is so simple that I don't believe at the begining that it will actually work.
I was thinking that Laravel somehow override the default behavior of the normal PHP Sessions. Maybe declaring a custom session_handler
or some other magic behind the scenes.
Thanks for all the answers I got here, I discover that Laravel doesn't actually use the $_SESSION at all, it implements a completely different driver.
So, to have acesses to the external session, I just use the native session_start()
and session_name()
in pure PHP and now I have acess to all data save in the global $_SESSION
on the same namespace used in the side project.
For cookies, I can't figure out yet how to do it, from the Laravel app :/. But just with sessions I can go ahead and merge the apps.
I had a similar issue with CakePHP a couple of months ago. Basically, the session variables in the Cake application were completely independent of the session variables in the bespoke application that we had. The issue was that Cake uses a different session identifier than PHPSESSID. In the end, I was forced to bridge the gap by forcing Cake to use PHPSESSID. I'm not too familiar with Laravel, but from what I can see (on their main site), they seem to be using "laravel_session" instead of PHPSESSID. This is most likely your issue and there seems to be a topic about this on the offical Laravel forums.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With