Разбить каждую функцию (), перебирая хеш в Perl
Я использую цикл while для перехода по хешу. В этом цикле while я хочу завершить цикл изнутри. Приведенный ниже код работает с точки зрения остановки цикла, но когда код выполняется снова в следующий раз (он находится внутри большего цикла), цикл продолжается там, где он был прерван. Я думаю, мне нужно как-то сбросить каждую функцию, но я не уверен, как это сделать.
my $break = 0;
while (!$break() and (($key,$value) = each %ENV)) {
print "$key=$value\n";
if ($key eq "stop") {
$break = 1;
}
}