几乎普遍当人们在SO(或其他地方)上发布关于Perl和从文件中读取的问题时,如果任何涉及旧式开放的代码
open FH, ">file.txt" or die "Can't open for write, $!"; # OLD way, do not use!
Run Code Online (Sandbox Code Playgroud)
因不使用词法文件句柄而大喊大叫.众所周知,
open my $fh, ">", "file.txt" or die "Can't open for write, $!"; # new hotness
Run Code Online (Sandbox Code Playgroud)
是在现代Perl中打开文件句柄的正确方法.目录处理怎么样?在最近的一些SO问题中,人们提出了涉及的问题opendir
,并发布了类似的代码
opendir DIR, "/directory" or die "Can't get the directory, wtf?! $!"; # ???
Run Code Online (Sandbox Code Playgroud)
该的perldoc页显示
opendir(my $dh, $some_dir) || die "can't opendir $some_dir: $!";
Run Code Online (Sandbox Code Playgroud)
作为例子.
我们是否应该建议人们为opendir使用词法目录句柄?