У меня довольно глупый вопрос (я считаю):
Что произойдет, если я начну 2 сеанса, дважды вызов session_start()
? Например, у меня есть класс User
, где я запускаю сеанс пользователя, и класс Error
, в котором я запускаю другой сеанс, поэтому я могу хранить в них ошибки и уведомления и передавать их на другие страницы.
Могу ли я столкнуться с проблемой, и это эффективно?
PHP не поддерживает несколько одновременных сеансов. Вызов session_start()
второй раз в запросе ничего не делает, если существующий сеанс не был уничтожен (через session_destroy()
).
session_start()
создает сеанс или возобновляет текущий на основе идентификатора сеанса, переданного через запрос GET или POST, или передается через файл cookie.
Вы можете использовать разные session_start (), если вы проверяете каждый из них, если уже был создан сеанс, таким образом:
if (!isset($_SESSION)) { session_start(); }