Leser: 23
my $summe += (map {length ($FORM{$_}) + length ($_)} keys %FORM);
1 2 3 4 5 6 7 8 9 10
#!/usr/bin/perl use strict; use warnings; my %hash=qw(das 1 ist 2 ein 3 test 4); my $size=0; map{$size+=length($_)}%hash; print "$size\n";
my $size=length(join('',%hash));
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
#!/usr/bin/perl use strict; use warnings; use Benchmark 'cmpthese'; my %hash=qw(Das 1 ist 2 ein 3 test 4); cmpthese(300_000, { 'for' => sub { my $size=0; $size+=length($_) for(%hash); }, 'map' => sub { my $size=0; map{$size+=length($_)}%hash; }, 'join' => sub { my $size=length(join('',%hash)); }, });
2010-12-17T14:07:19 topeg"join" scheint das schnellste zu sein.
1 2 3
$FORM{upload_name} = $cgi -> param ('upload'); my $temp = $cgi -> upload ('upload'); if ($temp) { while (<$temp>) { $FORM{upload} .= $_ } }
1 2 3 4 5 6
$FORM{upload_name} = $cgi -> param ('upload'); if(my $temp = $cgi -> upload ('upload')) { local $/ = undef; $FORM{upload} = <$temp>; }
my $test = -s $FORM{upload_name};
2010-12-17T15:43:45 topegMöglicherweise haben wir es hier auch mit "falschen" Werten (ge-"tie"-te Objekte) zu tun, die beim kopieren zerstört werden.
my $size=length(join('',%{$_[1]}));