in reply to Joining an array

Batman!

#!/usr/bin/perl -- use strict; use warnings; use CGI; use URI; print join "\n", CGI->new( { @$_ } )->query_string, Yo( @$_ ), Yuri( @$_ ), , "\n" foreach [qw( name John number 7 status unknown )], [qw( a >&< q ];[ arf =&= )]; exit 0; sub Yuri { use URI; my $u = URI->new; $u->query_form( @_ ); $u->query ; } sub Yo { use CGI; #~ use CGI qw/ -oldstyle_urls /; local $CGI::USE_PARAM_SEMICOLONS=0; my $q = CGI->new; for( my $i = 0; $i < @_; $i +=2 ){ $q->param( $_[$i], $_[$i+1] ); } $q->query_string; } __END__ number=7;status=unknown;name=John name=John&number=7&status=unknown name=John&number=7&status=unknown a=%3E%26%3C;q=%5D%3B%5B;arf=%3D%26%3D a=%3E%26%3C&q=%5D%3B%5B&arf=%3D%26%3D a=%3E%26%3C&q=%5D%3B%5B&arf=%3D%26%3D