You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Tosh Cooey <to...@1200group.com> on 2010/04/23 21:20:52 UTC

request length global variable

I'm drawing a blank here and I probably shouldn't be, but...

I would like to use a global variable that's only available for the 
duration of a request.

I guess I could create() and undef() the variable at the start and end 
of each request but that seems so... inelegant...

Any suggestions?

Danke!

Tosh

-- 
McIntosh Cooey - Twelve Hundred Group LLC - http://www.1200group.com/

Re: request length global variable

Posted by Douglas Sims <ra...@gmail.com>.
I've struggled with wanting to use globals too, but it's not the functional
way.  Our current approach is to create a parallel request object and pass
that through all of the function calls.  We set a member of the parallel
request object to the actual Apache request object.  Something like this:

$s->new Session($r, $dbh);

and then in Session,

sub new {
  ($class, $self->{REQUEST}, $self->{DBH})=@_;

and then later

DoStuffWithRequest($s);

It might be neater to just override the Apache request object.




On Fri, Apr 23, 2010 at 2:20 PM, Tosh Cooey <to...@1200group.com> wrote:

> I'm drawing a blank here and I probably shouldn't be, but...
>
> I would like to use a global variable that's only available for the
> duration of a request.
>
> I guess I could create() and undef() the variable at the start and end of
> each request but that seems so... inelegant...
>
> Any suggestions?
>
> Danke!
>
> Tosh
>
> --
> McIntosh Cooey - Twelve Hundred Group LLC - http://www.1200group.com/
>

Re: request length global variable

Posted by André Warnier <aw...@ice-sa.com>.
Tosh Cooey wrote:
> I'm drawing a blank here and I probably shouldn't be, but...
> 
> I would like to use a global variable that's only available for the 
> duration of a request.
> 
> I guess I could create() and undef() the variable at the start and end 
> of each request but that seems so... inelegant...
> 
> Any suggestions?
> 
$r->pnotes() ?
http://perl.apache.org/docs/2.0/api/Apache2/RequestUtil.html#C_pnotes_

On the other hand, a global variable can be useful to keep data 
*between* requests (within a single Apache child).
To use carefully, but can be very useful.