You are viewing the version of this documentation from Perl 5.8.6. View the latest version
reverse LIST

In list context, returns a list value consisting of the elements of LIST in the opposite order. In scalar context, concatenates the elements of LIST and returns a string value with all characters in the opposite order.

print reverse <>;		# line tac, last line first

undef $/;			# for efficiency of <>
print scalar reverse <>;	# character tac, last line tsrif

Used without arguments in scalar context, reverse() reverses $_.

This operator is also handy for inverting a hash, although there are some caveats. If a value is duplicated in the original hash, only one of those can be represented as a key in the inverted hash. Also, this has to unwind one hash and build a whole new one, which may take some time on a large hash, such as from a DBM file.

%by_name = reverse %by_address;	# Invert the hash