構文 |
|
defined 確認対象 |
返り値 |
|
定義されている場合に真 |
説明
- 確認対象が定義されているかどうかを返します。
- ハッシュのキーが存在するかどうかを確認する場合は,definedではなくexistsを使って下さい。
使用例
#!/usr/bin/perl
use strict;
use warnings;
my $foo = 0;
my $bar = "";
my $baz;
print "\$fooの確認\n";
show_check_result($foo);
print "\n";
print "\$barの確認\n";
show_check_result($bar);
print "\n";
print "\$bazの確認\n";
show_check_result($baz);
sub show_check_result {
my $val = shift;
if ($val) {
print "1: True\n";
}
if ($val ne "") {
print "2: True\n";
}
if (defined $val) {
print "3: True\n";
}
}
#!/usr/bin/perl
use strict;
use warnings;
my %foo = (
'hoge' => 1,
'fuga' => undef, # 未定義値
);
if (defined $foo{hoge}) {
print '$foo{hoge} defined', "\n";
} else {
print '$foo{hoge} not defined', "\n";
}
if (exists $foo{hoge}) {
print '$foo{hoge} exists', "\n";
} else {
print '$foo{hoge} not exists', "\n";
}
print "-----\n";
if (defined $foo{fuga}) {
print '$foo{fuga} defined', "\n";
} else {
print '$foo{fuga} not defined', "\n";
}
if (exists $foo{fuga}) {
print '$foo{fuga} exists', "\n";
} else {
print '$foo{fuga} not exists', "\n";
}
print "-----\n";
if (defined $foo{piyo}) {
print '$foo{piyo} defined', "\n";
} else {
print '$foo{piyo} not defined', "\n";
}
if (exists $foo{piyo}) {
print '$foo{piyo} exists', "\n";
} else {
print '$foo{piyo} not exists', "\n";
}