背景:我是Perl的新手,我正在修改一個簡單的腳本,它循環訪問一個匿名數組的散列值。我不能循環訪問數組。我得到的是ARRAY(0x1663b78)
循環訪問Perl內部的匿名數組
守則
#!/usr/bin/perl
package Foo;
use strict "vars";
sub new {
my $class = shift;
my $self = {
distro => "",
pkg_mgr => "",
options => ["PHP + Apache", "PHP + Lighthttpd", "PHP + Nginx", "RubyGems + Rails", "Node JS + NPM"]
};
bless $self, $class;
return $self;
}
sub print_options {
my($self) = @_;
foreach($self->{options}) {
print $_ . "\n";
}
}
my $setup = new Foo();
$setup->print_options();
另外,如果有人能好心告訴我,如果它是有用的遠程使用use strict "vars";
,如果我真的沒有需要私人或公共變量。我知道我將如何在PHP中執行此操作,但是我無法用Perl將其包裹在頭。
最後,我使用Perl的原因是因爲最終我要製作一個安裝服務器軟件(包括PHP)的應用程序。該腳本將需要用戶通過命令行進行交互。
你應該做'嚴格使用'; - 沒有理由使用'嚴格的'變數';''這隻會導致一些狹窄。 – friedo
@弗裏多,感謝您的提示!爲清晰起見和文檔參考,請參閱 – djthoms