Question

Je jeté un oeil à la source de Slurp et j'aimerais comprendre comment le fait slurp() travail:

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

Où se trouve le fichier même ouvert?

Était-ce utile?

La solution

Voir ARGV et $/ href="http://perldoc.perl.org/perlvar.html" rel="nofollow"> perldoc perlvar .

Voir aussi Chemin :: Classe: File :: slurp .

Autres conseils

ARGV est une poignée, le fichier a été ouvert implicitement.

Cet extrait met le nom de fichier dans @ARGV. Le ARGV ouvre implicitement filehandle les fichiers qu'il voit dans @ARGV. C'est le même que nous ne filehandle voyons pas dans l'opérateur diamant <> puisqu'il est le descripteur de fichier par défaut pour cet opérateur.

est le même langage Perl comme:

 my $data = do { local( @ARGV, $/ ) = $file; <> };
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top