Не работает unset()

  • Автор темы Автор темы Term2
  • Дата начала Дата начала

Term2

Новичок
Не работает unset()

Делаю

unset($_SERVER['$PHP_AUTH_USER']);
unset($_SERVER['$PHP_AUTH_PW']);

Но после этого isset() все равно возвращает 1. Почему?
 
Term2
а что этими действиями ты хочешь достичь - unset или же logout ?
 
Gas
logout

-~{}~ 02.01.08 20:16:

WP
лишний $ убрал, ничего не изменилось.
 
http://phpclub.ru/talk/showthread.php?s=&threadid=85874

И поищи ещё по форуму, обсуждалось не раз, но нормальной реализации вроде не придумали.
Помню, Фaнат, выкладывал давно версию, которая как-то работала, но могу ошибаться - давно было :)
 
PHP:
$_SERVER['PHP_AUTH_USER'] = 'test';
unset($_SERVER['PHP_AUTH_USER']);
var_dump(isset($_SERVER['PHP_AUTH_USER']));
// bool(false)

Term2
Приведи код который подтверждает твои слова.
 
> logout
unset не влияет на заголовки, приходящие от клиента.
 
Ничего не делать. Закрыть браузер

а вообще, перед тем, как спрашивать, что делать, воспитанные мальчики сначала поясняют, какая проблема перед ними стоит.
 
Закрыть браузер.
если такой вариант логаута тебя не устраивает, то придется воспользоваться другими вариантами авторизации.
 
хочу удалить все элементы массива через unset с помощью цикла
но последние два остаются

почему?

PHP:
<?php


$test = array();
$test[0]='a';
$test[1]='b';
$test[2]='c';
$test[3]='d';
$test[4]='e';

$count = array();

for ($i = 0; $i < count($test); $i++)
	{		
			unset($test[$i]);
	};

print_r($test);
?>

выведет
Array ( [3] => d [4] => e )

спасибо
 
PHP:
$test = array();
$test[0]='a';
$test[1]='b';
$test[2]='c';
$test[3]='d';
$test[4]='e';

$count = count($test);

for ($i = 0; $i < $count; $i++) {        
            unset($test[$i]);
};



print_r($test);

Полное непонимание того, что ты делаешь
 
Сверху