Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
function my_session_open($save_path, $session_name) {
return true;
}
function my_session_read($id) {
$GLOBALS['session_read_return'] = Cache_Proxy::get($id);
return $GLOBALS['session_read_return'];
}
function my_session_write($id, $data) {
if ($GLOBALS['session_read_return'] == $data) return true; // Если в пределах этого запроса данные не менялись - не записываем их обратно
return Cache_Proxy::set($id, $data, 0, 36000);
}
function my_session_destroy($id) {
Cache_Proxy::delete($id);
return true;
}
function my_session_gc($maxlifetime) {
return true;
}
function my_session_close() {
return true;
}
session_set_save_handler('my_session_open', 'my_session_close', 'my_session_read', 'my_session_write', 'my_session_destroy', 'my_session_gc');
register_shutdown_function('session_write_close');
Сессии в PHP — подводный камушек при асинхронных запросах