#!/usr/bin/perl -w
use strict;
open(my $ph, q{<}, '/path/file') || die "Can't open file";
while (<$ph>) {
print $_;
}
close($ph);
Perl::Critic ругается
Perl::Critic на уровне 4 ругается на строчку: "open (PH, {>}, '/path/file')" и предлагает вариант "open (my $ph, q{>}, '/path/file')". Что-то я никогда нигде в книжках не видел, чтобы так объявляли дескрипторы. Ну хорошо, я заменил. Но чтоже теперь делать с "printf PH ...;" и "close (PH);" ? Они-то в скаляры не могут писать, они могут писать в дескрипторы ! $ph им не только не подходит, но они даже не видят, что он был раньше объявлен.
и что, вот это