Xenos
Новичок
Область видимости: воскресающая переменная?..
В общем возникла у меня размолвка между сознанием и действительностью. Как итог: баг в скрипте.
Суть: воскресающая переменная $extasy.
Загвоздка: я ж убиваю то переменную предпоследней строчкой функции?.. Убиваю. И вставленный isset после unset это же подтверждает.
Но выйдя из функции мы видим эту переменную в здравии и функциональности.
Хотя стоит сделать рокировку в самом начале дескать
Как больше эта переменная не воскресает. Т.е. становится корректно локальной. (что правильно, конечно. я согласен.)
Больше вопрос как убить эту глобальную, если там "сверху" у меня крутится while.
И с чем связана такая странность, что unset убивает локальную копию, а не глобальное значение?..
В общем возникла у меня размолвка между сознанием и действительностью. Как итог: баг в скрипте.
Суть: воскресающая переменная $extasy.
PHP:
function lsd(){
global $extasy;
if (!isset($extasy)){
$extasy = 'Yea!';
echo ' ^-^ ';
}
unset ($extasy);
return 'OK';
}
lsd();
echo $extasy;
lsd();
echo $extasy;
Но выйдя из функции мы видим эту переменную в здравии и функциональности.
Хотя стоит сделать рокировку в самом начале дескать
PHP:
$a = $extasy; unset($extasy); $extasy = a;
Больше вопрос как убить эту глобальную, если там "сверху" у меня крутится while.
И с чем связана такая странность, что unset убивает локальную копию, а не глобальное значение?..
