AFAIK the content of the superglobal variables cannot be changed ( even though i haven't found this in the docs i can remeber got beaten by PHP for doing so :-) )
Back to the problem ( if existent ):
If you don't do stuff like '$_SERVER['SERVER_NAME'] = xxxx;' inside your script you won't run into trouble - I know some ppl like to use such strange work-arounds ;-)
Otherwise using define ( 'SERVER_NAME' , $_SERVER['SERVER_NAME'] ); right at startup will usually solve your problem ( as workarounds will most likely kill other scripts if the SERVER_NAME is diffrent :-))
-- red
[...]
[...]Hello,
I am using the variable $_SERVER['SERVER_NAME'] inside a function, for example:
function check_servname() { global $server ; if($_SERVER['SERVER_NAME'] != $server) { echo "NOT OK, NOT GOOD SERVER NAME" ; exit ; } }
But we can modify the value of $_SERVER['SERVER_NAME'] before calling the function check_servname(). And I am looking for a the right server name not for a server name which may have been changed before calling check_servername:
$_SERVER['SERVER_NAME'] = "www.google.com" ; //before calling check_servname and $_SERVER['SERVER_NAME'] will be "www.google.com" inside the function even the server name is not "www.google.com".
Is there any way to get the server name with a variable which would be read-only ?
Thanks, Vincent.
Agreed - constants are the way to do this. I wanted to mention that the $_SERVER variables are meant to hold values generated by your server. Of course if you really ARE google then I'm going to feel stupid for even mentioning this :)
http://www.php.net/reserved.variables
-- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php