Re: questions about $_SERVER
| From: | Tedd Sperling | Date: | Sat, 10 Mar 2012 15:37:53 +0000 |
| Subject: | Re: questions about $_SERVER | ||
| References: | 1 2 3 4 5 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-316962@lists.php.net to get a copy of this message | ||
On Mar 9, 2012, at 10:20 PM, Jim Giner wrote:
> "tamouse mailing lists" <tamouse.lists@gmail.com> wrote in message
>
> news:CAHUC_t8g43GE3xqvSU5SwFePGS1XG=TK1MhRbem9GjAArVEd8g@mail.gmail.com....
>> On Mon, Feb 13, 2012 at 2:39 PM, Tedd Sperling <tedd.sperling@gmail.com>
>> wrote:
>>> On Feb 13, 2012, at 4:10 AM, Stuart Dallas wrote:
>>>> On 13 Feb 2012, at 06:28, Rui Hu wrote:
>>>>> How PHP sets variables in $_SERVER, say, $DOCUMENT_ROOT? What should I
>>>>> know
>>>>> if I want to modify $_SERVER myself?
>>>>
>>>> Once your script starts the superglobals are no different to any other
>>>> variables, except that they're in scope at all times.
>>>
>>> That's probably the reason why they are named "SuperGlobals". :-)
>>>
>>> But to be more descriptive, these are simply globals that are predefined
>>> by php -- see:
>>>
>>>
>>> http://php.net/manual/en/language.variables.superglobals.php
>>>
>>> I believe, (please show me otherwise) there are no "globals" in PHP other
>>> than SuperGlobals.
>>
>> Assuming you mean pre-defined ones, there shouldn't be, since no other
>> ones are documented. If there are, then either they should be
>> documented, or they should be ignored as it can be dangerous to use
>> undocumented features. :)
>
> Just to be clear - you asked if it were true that "there are no "globals" in
> PHP other than SuperGlobals: Don't forget that anything that you declare as
> global in a script is a global for that instance of that script (and
> whatever includes, etc. that it calls during its run)
That's correct, but to access those variables outside of their scope (such as a function) you
do via a SuperGlobal, namely $GLOBAL['whatever'].
As such, there are no "globals" in PHP other than SuperGlobals. As I said, if I'm
wrong, please show me otherwise.
Cheers,
tedd
_____________________
tedd.sperling@gmail.com
http://sperling.com