Я вижу довольно некоторые фреймворки и CMS, которые используют собственную реализацию сеанса вместо собственного драйвера сеанса PHP. Все по их собственным причинам.Каким образом фреймворки со своей собственной сессионной реализацией имеют дело с третьей стороной?
Примерами являются Wordpress, Laravel, CakePHP (несколько).
Что мне интересно, если они устанавливают cookie вручную и выполняют сеанс самостоятельно, как они взаимодействуют с пакетами thirdparty?
Пакеты композитора Thirdparty могут взаимодействовать с по умолчанию $_SESSION
и могут попытаться установить переменные сеанса, в то время как $_SESSION
полностью не используется.
Все еще с такими фреймворками, как Laravel, из того, что я помню, по-прежнему прекрасно взаимодействует с пакетами thirdparty, и все они попадают в их собственную реализацию сеанса.
Хотелось бы узнать кого-нибудь, у кого может быть некоторый опыт в этом.
редактировать
Примером пакета может третью сторону представлять собой PHP DebugBar, который может считывать данные из $ _SESSION и вставить свою собственную переменную, если это необходимо. Я знаю, что у таких фреймворков, как Laravel, есть своя собственная версия debugbar, которая не взаимодействует с родным $_SESSION
.
Я предполагаю, что хочу знать, можно ли полностью реализовать свою собственную реализацию $_SESSION
без особых проблем.
Полезно спасибо. Я пишу собственную собственную реализацию обработчика сеанса, но это своего рода гибрид с 'session_set_save_handler()' желательно, я хотел бы полностью избавиться от '$ _SESSION'. Я думаю, что это может быть жизнеспособным, потому что многие большие рамки не имеют проблем с этим, и вряд ли какие-либо пакеты третьей стороны взаимодействуют с '$ _SESSION. Спасибо, что нашли время, чтобы прочитать мой вопрос. –
Ваш прием @ Stephan-v может быть полезен для погружения в [источник] (https://github.com/laravel/framework/tree/master/src/Illuminate/Session) – Ken
Имейте в виду, что Laravel использует сеансы на основе файлов (по умолчанию) он даже не использует никаких собственных обработчиков сеансов PHP. (Symfony имеет собственный драйвер сеанса, который взаимодействует с сеансом) – Ken