Небольшой вопрос по session_register

kombo

Новичок
Небольшой вопрос по session_register

Что-то я не понимаю.
Есть ли разница
1)$_SESSION["gal"]=1;
2)$gal=1; $_SESSION["gal"]=$gal;
При первом варианте недоступна переменная gal как глобальная $gal, доступна только как $_SESSION["gal"], но тогда почему во втором варианте можно обратиться как $gal (из сессии)
 

Yurik

/dev/null
в первом есть только переменная сессии $_SESSION['gal']
Во втором у тебя есть 2 переменные с одинаковым именем, одна $gal, другая - елемент массива $_SESSION: $_SESSION['gal']
При register_globals=Off елементы массива $_SESSION НЕ преобразуются автоматически в одноименные переменные.
 

kombo

Новичок
register_globals у меня пока on, я как раз переделываю скрипты под off. Какая то непонятная фишка происходит. При reload все доступно. Как раз видимо при reload происходит преобразование в глобальные. У меня ведь как: результат функции пишеться в $gal и тут же выводиться, но не из функции, т.е. если $_SESSION["gal"]=func();echo $gal; не успевает преобразоваться. Так небольшое открытие для себя.))
 
Сверху