Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Kill Session
 
 автор: vitroot   (22.02.2008 в 04:16)   письмо автору
 
 

>>После завершения работы с сессией сначала нужно разрегистрировать все переменные сессии -unset($var) , а затем вызвать функцию session_destroy

Есть вопрос. У меня, например, в сессии крутится далеко не одна переменная, а сотни, или массив и пара объектов до кучи. Для того, чтобы мне от'UNSET'ить все эти переменные, массивы и объекты - надо много геморить. Так вот, возможно ли уничтожение всех переменных, массивов, объектов сессии одновременно? То есть реально ли очистить сессии совсем одним ударом?
Или, все-таки, придется создавать метод в классе и прописывать в нем массовое убиение всех переменных сессии?

   
 
 автор: mihdan   (22.02.2008 в 08:05)   письмо автору
 
   для: vitroot   (22.02.2008 в 04:16)
 


<?
foreach($_SESSION as $var) unset($var);
?>

   
 
 автор: vitroot   (22.02.2008 в 08:29)   письмо автору
 
   для: mihdan   (22.02.2008 в 08:05)
 

спасибо!

   
 
 автор: Trianon   (22.02.2008 в 09:48)   письмо автору
 
   для: mihdan   (22.02.2008 в 08:05)
 

> foreach($_SESSION as $var) unset($var);

и какую переменную мы этим кодом уничтожим? :)
<?
foreach($_SESSION as $key => $var) unset($_SESSION[$key]);
?> 


Создавать в одном проекте кучу переменных на верхнем уровне сессии - в принципе порочный подход.

   
 
 автор: mihdan   (22.02.2008 в 12:09)   письмо автору
 
   для: Trianon   (22.02.2008 в 09:48)
 

Упс, спасибо, Trianon чтот под утро голова тупит ))))

   
 
 автор: CrazyAngel   (22.02.2008 в 16:41)   письмо автору
 
   для: vitroot   (22.02.2008 в 04:16)
 

хм... а почему так нельзя?

<?php
$_SESSION 
= array();
//или так?
while(array_shift ($_SESSION));
?>

   
 
 автор: bronenos   (22.02.2008 в 17:30)   письмо автору
 
   для: CrazyAngel   (22.02.2008 в 16:41)
 

session_unset();

   
 
 автор: vitali   (23.02.2008 в 10:56)   письмо автору
 
   для: bronenos   (22.02.2008 в 17:30)
 

Замечание: Чтобы полностью удалить сессию, необходимо выполнить следующую последовательность команд
$_SESSION = array(); //Обнуляем массив
@unset($_COOKIE[session_name()]); //удалить cookie, соответствующие групповые SID
session_destroy(); //уничтожает хранилище сессии

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования