Facebook теперь предлагает подписку пользователям, чтобы вы могли получать обновления в реальном времени при внесении изменений. Если мое приложение получит обновление, я планирую его сохранить в базе данных. Я также хотел бы узнать, существует ли их сессия. Если это произойдет, я также смогу обновить данные.
Мои идентификаторы сеанса – MD5 (fb_id + secret), поэтому я могу легко редактировать их сеанс. Вопрос в том, как определить, существует ли сеанс.
Согласно руководству 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
если сеансы включены, а один существует.