|
Posted by John Nichel on 11/14/11 11:22
Jay Blanchard wrote:
> [snip]
>
>>>if($bars == 3)
>>>{
>>> define('BAR', 1);
>>>}
>>>
>>>then:
>>>
>>>if(BAR)
>>>{
>>
>>That's an incorrect use for constants. Use variables for that =]
>
>
> WHY?
> [/snip]
>
> Because the constant can be variable in this case. Consider (this is old
> school, and we all know that I am the definition of old school) the
> definition of the words themselves...variable and constant. You may want
> to use a constant to determine a variable;
>
> $myVar = CONSTANT + 3;
>
> But you would never want to use a variable to determine a constant
> because the variable is not likely to be the same (that is why we call
> them variables) on any iteration. Using constants in expressions is OK,
> for instance
>
> if(BAR == $foo){
> ...stuff...
> }
>
> But modifying a constant is a no-no.
>
I may be misunderstanding you here, but I don't see why you would not
want to use a variable to define a constant. I do it from time to time,
most common would be in a config document where I'll check if the page
is being accessed via http or https, and define a constant based on
that. I know I could use a variable for this, but I like using the
constant for it's global scope in that case.
--
John C. Nichel
ÜberGeek
KegWorks.com
716.856.9675
john@kegworks.com
Navigation:
[Reply to this message]
|