Функция keys.
Функция keys(%hash_name) выдает список всех текущих ключей в хеше %hash_name. Если элементы в хеше отсутствуют, функция keys
возвращает пустой список.
Пример:
$test{"abc"} = "cba"; $test{12.7} = 21.7; @list = keys(%test); # @list = ("abc", 12.7) или (12.4, "abc")
Как и в остальных встроенных функциях круглые скобки не обязательны.
foreach $key (keys %test) { print "at $key we have $test{$key}\n"; }
В этом примере отдельные элементы хеша интерполируются в строки в двойных кавычках.
В скалярном контексте функция keys выдает число элементов хеша.
if(keys( %hash)) { ... } # # or # while(keys(%hash) < 10) { ... }
Если обратится к переменной %hash в скалярном контексте, то будет возвращено значение ложь или истина (пустой или нет):
if(%hash) { # если истина ... ... }