Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

Re: How do I turn a hash into a name=value string?

by bangers (Pilgrim)
on Jul 28, 2005 at 16:49 UTC ( #479039=note: print w/replies, xml ) Need Help??

in reply to How do I turn a hash into a name=value string?

Not sure I'd call this elegant, but:
my ( %hash ) = split /\s*[=,]\s*/, "apples=green,pears=brown,oranges=o +range"; my ($string) = join(",", (map { my $a = "$_=$hash{$_}" } keys(%hash)) + ); print "[$string]\n";

Replies are listed 'Best First'.
Re^2: How do I turn a hash into a name=value string?
by JediWizard (Deacon) on Jul 28, 2005 at 17:05 UTC

    Out of curiosity: Why are you bothering to assign to a variable inside your map statement?

    I have not tested it, but I am pretty sure if you run with warnings and strict you will be warned the $a is used only once. Beyond that you really should not use $a or $b as they are special variables used for sort.

    They say that time changes things, but you actually have to change them yourself.

    —Andy Warhol

      I tried something elase and first, then decided the above way was better. But you're right, it isn't needed - although I always run with strict and there aren't any warnings.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://479039]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (4)
As of 2020-05-29 10:51 GMT
Find Nodes?
    Voting Booth?
    If programming languages were movie genres, Perl would be:

    Results (169 votes). Check out past polls.