|
|
|
| Использую свой механихм сессий, по примеру скрипта с этого портала
session_set_save_handler(
'session::open',
'session::close',
'session::read',
'session::write',
'session::destroy',
'session::gc'
);
|
Каждый метод класса содержит следующий код в самом начале. То есть если метод был вызван, то создается файл, часть имени которого сообщает что выполнялось
file_put_contents('session_writeupd.txt','1');
|
Но в файловой системе появляются только два файла:
session_open.txt
и
session_read.txt
Когда вызывается 'session::gc' ? Или ее нужно вызывать вручную?
И почему при создании новой сессии, когда происходит запись (write), соответствующий файл не пишется? Что за белиберда с сессиями? И негде почитать об этом подробнее, вся информация о примитивной работе | |
|
|
|
|
|
|
|
для: С задней парты
(28.02.2013 в 11:56)
| | в книгах достаточно хорошо описано, правда я давно читал, но на сколько помню "уборка" проходит по хитровымудренному алгоритму, иначе говоря достаточно непредсказуемо, ток не помню относится ли это к переопределенному механизму сессий | |
|
|
|
|
|
|
|
для: С задней парты
(28.02.2013 в 11:56)
| | >Когда вызывается 'session::gc' ? Или ее нужно вызывать вручную?
session.gc_divisor в сочетании с session.gc_probability вероятность запуска функции сборщика мусора (gc, garbage collection) при каждой инициализации сессии. Вероятность рассчитывается как gc_probability/gc_divisor, т.е. 1/100 означает, что функция gc запускается в одном случае из ста, или 1% при каждом запросе. session.gc_divisor по умолчанию имеет значение 100.
http://www.php.net/manual/ru/session.configuration.php | |
|
|
|