Domanda

Ho dato un'occhiata alla fonte di Slurp e mi piacerebbe capire come funziona slurp() lavoro:

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

Dove si trova il file anche aperto?

Altri suggerimenti

ARGV è una maniglia, il file è stato aperto in modo implicito.

Questo frammento mette il nome del file in @ARGV. Il filehandle ARGV apre implicitamente i file che vede in @ARGV. Questo è lo stesso filehandle che non vediamo nel <> operatore diamante dal momento che è il filehandle di default per tale operatore.

Questo è lo stesso linguaggio Perl come:

 my $data = do { local( @ARGV, $/ ) = $file; <> };
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top