defined $param{selected} ? ( $param{selected} .= ":$file" ) : ( $param{selected} = $file ); join ( "", map { hidden ( -name => $_, -default => $param{$_}, ) } keys %param ) #### perl -le 'use CGI qw/ :standard /; print hidden( -name => "foo", -default => "foo:bar" )'