обозначение $$ перед переменной

begloff

Новичок
обозначение $$ перед переменной

уважаемые, помогите пожалуйста разобраться со следующей записью
foreach ($cat as $id => $q)
{
if($$id=="0") unset($cat[$id]);
else $cat[$id] = $$id;
}
что такое $$id ??????? почему перед id аж целых два знака $
это фрагмент из кода, который работает на php4 - но не работает на php5
каким-нить образом можно это обойти?
спасибо, если подскажите.
 

begloff

Новичок
там на англисском. моя не понимать по нему ...

-~{}~ 17.12.07 00:06:

нашел тоже самое на русском.
 

Фанат

oncle terrible
Команда форума
begloff
Это устаревшая форма записи. ей пользовались люди, которые не знали про массивы.

Обойти можно, если вместо набора отдельных переменных использовать массив
какие ключи бывают у массива $cat?
 

fixxxer

К.О.
Партнер клуба
судя по всему, ему надо завести чужой говнокод
т.е. поставить register_globals on и успокоиться
 

SiMM

Новичок
> видимо так и сделаю
Да здравствует говнокод :)
Поскорее бы PHP6 везде стоял. Без register_globals'а.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Поскорее бы PHP6 везде стоял. Без register_globals'а.
Тогда можно будет тихонько организовать хостинг с ПХП4-5, который будет пользоваться мегапопулярностью :D
 

partizan

Новичок
Пробовал на хостинге отключить register_globals функцией ini_set() - не получается
 

kruglov

Новичок
partizan
А как вы себе это представляете? Поезд уже пришел, переменные вот они, сидят, плюшки едят, и тут только ini_set запускается...
 
Сверху