Jak mogę przechowywać całą zawartość tablicy do zmiennej skalarnej. na przykład:
my $code = do { local $/; <FILE HANDLE>; };
Działa to dobrze dla uchwytów plików, ale potrzebuję tego dla tablicy.
Odpowiedzi:
13 dla odpowiedzi nr 1Posługiwać się join
.
my $str = join "", @array;
5 dla odpowiedzi nr 2
Możesz także odwołać się do tablicy:
my @array = "a".."z";
my $scalar = @array;
foo( $scalar );
sub foo {
my $array_ref = shift;
for my $f ( @$array_ref ) {
do_something( $f );
}
}
To, jakie podejście podejmiesz, zależy naprawdę od tego, co próbujesz osiągnąć.
1 dla odpowiedzi nr 3
@arr = ("1","2","3") ;
my $arr = "@arr" ;
print "$arr";
0 dla odpowiedzi nr 4
W rzeczywistości możesz użyć zmiennej skalarnej jako uchwytu pliku:
my $bigbuffer;
my $f;
open $f, ">", $bigbuffer; # opens $f for writing into the variable $bigbuffer
# do whatever prints fwrites etc you want here