if (defined $var1 || defined $var2)
if (defined $var1 && defined $var2)
####
if (defined ($var1 || $var2))
if (defined ($var1 && $var2))
####
./test.pl ""
Test 1: NOK
Test 2: OK
Test 3: OK
Test 4: NOK
####
#!/usr/bin/perl
use strict;
use warnings;
for my $i (1 .. 4) {
my $result = (&successfulValidation ($i))? "OK": "NOK";
print "Test ", $i, ": ", $result, "\n";
}
sub successfulValidation {
my $test = shift;
if ($test == 1) {
return defined ($ARGV[0] || $ARGV[1]);
} elsif ($test == 2) {
return defined $ARGV[0] || defined $ARGV[1];
} elsif ($test == 3) {
return defined ($ARGV[0] && $ARGV[1]);
} elsif ($test == 4) {
return defined $ARGV[0] && defined $ARGV[1];
}
}