http://www.perlmonks.org?node_id=1003037


in reply to Re^2: Parsing hashes with variable structure
in thread Parsing hashes with variable structure

Perhaps you meant the following? (I added {} around $usernumber)
if( exists $xml->{$usernumber}->{"user"}->{"firstname"} ) {...}

EDIT: You may also need to extend it as such: (but it is difficult to tell for sure w/o seeing more context)

if( ref eq 'HASH' and exists $xml->{$usernumber}->{"user"}->{"firstnam +e"} ) {...}