<p>Up until recently, I've been storing multiple values into different hashes with the same keys as follows:</p>

<pre><code>%boss = (
    "Allan"  =&gt; "George",
    "Bob"    =&gt; "George",
    "George" =&gt; "lisa" );

%status = (
    "Allan"  =&gt; "Contractor",
    "Bob"    =&gt; "Part-time",
    "George" =&gt; "Full-time" );
</code></pre>

<p>and then I can reference <code>$boss("Bob")</code> and <code>$status("Bob")</code> but this gets unwieldy if there's a lot of properties each key can have and I have to worry about keeping the hashes in sync.</p>

<p>Is there a better way for storing multiple values in a hash?  I could store the values as</p>

<pre><code>        "Bob" =&gt; "George:Part-time"
</code></pre>

<p>and then disassemble the strings with split, but there must be a more elegant way.</p>

This is the standard way, as per
perldoc perldsc
.
```
```
~> more test.pl
%chums = ( "Allan" => {"Boss" => "George", "Status" => "Contractor"},
           "Bob" => {"Boss" => "Peter", "Status" => "Part-time"} );

print $chums{"Allan"}{"Boss"}."\n";
print $chums{"Bob"}{"Boss"}."\n";
print $chums{"Bob"}{"Status"}."\n";
$chums{"Bob"}{"Wife"} = "Pam";
print $chums{"Bob"}{"Wife"}."\n";

~> perl test.pl
George
Peter
Part-time
Pam
```
```