[SP-pm] Como "ler" uma array que está dentro de um bloco "privado" ?
Nelson Ferraz
nferraz at gmail.com
Sun May 2 23:49:32 PDT 2010
Flávio,
Você deve declarar a variável fora do loop, para que ela continue a
existir quando o loop terminar.
my (@ativo, em inativo);
for (1..254) {
my $ip = "...";
# ...
if ( ... ) {
push @ativo, $ip; # use "push" para empilhar itens em um array
} else {
push @inativo, $ip;
}
}
# as variáveis declaradas fora do loop continuam a existir
print "Ativos: ", join(",", em ativo}, "\n";
print "Inativos: ", join(",", em inativo}, "\n";
Além de arrays, você também poderia ter usado hashes:
my %ip;
for (1..254) {
my $ip = "...";
# ...
if ( ... ) {
$ip{$ip} = 1;
} else {
$ip{$ip} = 0;
}
}
print "Ativos: ", join(",", grep { $ip{$_} == 1 } sort keys %ip}, "\n";
print "Inativos: ", join(",", grep { $ip{$_} == 0 } sort keys %ip}, "\n";
Enfim... TIMTOWTDI.
More information about the SaoPaulo-pm
mailing list