Bill Catlan wrote:
> Hello,
> 
> The online mod_perl guide
> (http://thingy.kcilink.com/modperlguide/perl/The_Scope_of_the_Special_Perl_Va.ht
> ml) states:
> 
> "Special Perl variables like $| (buffering), $^T (script's start time), $^W
> (warnings mode), $/ (input record separator), $\ (output record separator) and
> many more are all true global variables; they do not belong to any particular
> package (not even main::) and are universally available. This means that if you
> change them, you change them anywhere across the entire program; furthermore you
> cannot scope them with my()."
> 
> My question pertains the CGI %ENV hash.  First, I'm assumong that this is a
> global variable in the sense of a Perl Special Variable, and not just a main::
> or other package global.  My question is how is it the case that the %ENV
> variable script instance might be working with doesn't get clobbered or "reset"
> by the next incoming request.  Are some variables, like %ENV treated differently
> by mod_perl?
> 
> Also, how can special variables be reliably initialized?  For example, if one
> request provides a certain attribute, such as HTTP_IDENT, but a subsequent
> request does not, how do I know that the value of $ENV{HTTP_IDENT} on the second
> request will indeed be undefined?

This explains why by default %ENV is set for each request afresh.
http://perl.apache.org/guide/performance.html#PerlSetupEnv_Off

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

Reply via email to