Можете ли вы присвоить значения константам со знаком равенства после использования определенных в php? - PullRequest
7 голосов
/ 19 января 2012

Я знаю, чтобы определить постоянную, вы делаете что-то вроде этого

define("CONSTANT", "Hello world.");

если я захочу изменить значение константы, мне придется снова выполнить define ()? Почему я не могу просто сделать CONSTANT = "whatever"; после того, как оно уже определено в первый раз?

Ответы [ 2 ]

9 голосов
/ 19 января 2012

Суть константы в том, что она постоянно и всегда одна и та же.Вы не можете изменить константу после ее определения.

Даже использование define("CONSTANT", "Hello world."); вернет ошибку.

Я просто сделал это очень быстро, чтобы показать вам, что вы получите:

Notice: Constant CONSTANT already defined in /Users/stokholm/test.php on line 3

Call Stack:
    0.0003     629992   1. {main}() /Users/stokholm/test.php:0
    0.0171     630232   2. define() /Users/stokholm/test.php:3
1 голос
/ 19 января 2012

Константы, как указывает имя, не могут быть изменены после определения.Вместо этого используйте переменные.

...