Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re^7: Building data structures from CGI params

by Anonymous Monk
on Aug 09, 2012 at 08:30 UTC ( #986445=note: print w/replies, xml ) Need Help??


in reply to Re^6: Building data structures from CGI params
in thread Building data structures from CGI params

I like that better than expecting a ->param, since that breaks it away from the contract of purely hash->hash.

Adding a branch breaks no contracts

sub build_cgi_struct { my ($iv, $errs, $conf) = @_; use Scalar::Util qw(blessed); my $blessed = blessed $iv; my $splitnull = 1; if( $blessed and UNIVERSAL::can( $iv, 'param') ){ $splitnull = 0; if( $iv->isa('CGI') ){ $iv = $iv->{"param"} ; # cheat :) } else { $iv = { map { $_ => [ $iv->param($_) ] } $iv->param }; } } ... ... if $splitnull;

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://986445]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (10)
As of 2016-12-09 13:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (151 votes). Check out past polls.