Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > как удалить константу


Автор: supercelt 17.2.2008, 02:37
Возмож но ли удалить константу? или хотя бы переобъявить её , дать другое значение?

Автор: DioNiR 17.2.2008, 04:42
http://www.php.net/manual/ru/language.constants.php
Цитата
Различия между константами и переменными: 
У констант нет приставки в виде знака доллара ($); 
Константы можно определить только с помощью функции define(), а не присваиванием значения; 
Константы могут быть определены и доступны в любом месте без учета области видимости; 
Константы не могут быть определены или аннулированы после первоначального объявления; и 
Константы могут иметь только скалярные значения.

Автор: CyClon 17.2.2008, 09:50
На то она и константа. Нельзя.

ЗЫ: А что, защита а-ля объявлена константа IS_DEMO в зазенденном коде, нада кил ее? smile

Автор: supercelt 17.2.2008, 14:44
Не, просто есть простенькая система входа на сайт. И там, если при проверке пароля, всё правильно, то создаётся сессия и объявляется константа USER. А потом везде по ней проверяется наличие юзера на сайте. так вот когда он выходит, сессия уничтожается, и надо уничтожить USER.

Автор: GeneralElectric 17.2.2008, 15:13
оч. смешно

Автор: supercelt 17.2.2008, 15:22
чё смешного?

Автор: GeneralElectric 17.2.2008, 15:43
Постановка вопроса.
Рекомендую прочитать http://phpfaq.ru/na_tanke, особенно по поводу сохранения данных скрипта между обращениями к нему. Это и констант касается тоже.

То есть, определять константу при проверке пароля не имеет смысла. Как и уничтожать её при выходе. Там нечего уничтожать-то.
Если же константа создается в кажом скрипте по результатам проверки сессии, то вопрос обратно без смысла - сессию-то мы убили.


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)