Frage

Ich hatte einen Blick auf die Quelle der Slurp und ich würde zu verstehen, lieben, wie slurp() tut Arbeit:

sub slurp { 
    local( $/, @ARGV ) = ( wantarray ? $/ : undef, @_ ); 
    return <ARGV>;
}

Wo ist die Datei noch geöffnet?

War es hilfreich?

Andere Tipps

ARGV ist ein Griff, wird die Datei implizit geöffnet.

Dieser Code-Schnipsel legt den Dateinamen in @ARGV. Die ARGV Dateihandle öffnet implizit die Dateien, die es in @ARGV sieht. Dies ist die gleiche Dateihandle, dass wir nicht sehen, in dem <> Diamanten Betreiber, da es die Standard-Dateihandle für diesen Operator ist.

Dies ist das gleiche Perl Idiom wie:

 my $data = do { local( @ARGV, $/ ) = $file; <> };
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top