Обнаруживать, существует ли сеанс PHP

Facebook теперь предлагает подписку пользователям, чтобы вы могли получать обновления в реальном времени при внесении изменений. Если мое приложение получит обновление, я планирую его сохранить в базе данных. Я также хотел бы узнать, существует ли их сессия. Если это произойдет, я также смогу обновить данные.

Мои идентификаторы сеанса – MD5 (fb_id + secret), поэтому я могу легко редактировать их сеанс. Вопрос в том, как определить, существует ли сеанс.

Related of "Обнаруживать, существует ли сеанс PHP"

Согласно руководству PHP.net :

Если используется $_SESSION (или $HTTP_SESSION_VARS для PHP 4.0.6 или меньше), используйте isset() чтобы проверить, что переменная зарегистрирована в $_SESSION .

Я использую комбинированную версию:

 if(session_id() == '' || !isset($_SESSION)) { // session isn't started session_start(); } 

Если вы находитесь на php 5.4+, чище использовать session_status () :

 if (session_status() == PHP_SESSION_ACTIVE) { echo 'Session is active'; } 
  • PHP_SESSION_DISABLED если сеансы отключены.
  • PHP_SESSION_NONE если сеансы включены, но не существует.
  • PHP_SESSION_ACTIVE если сеансы включены, а один существует.