Hello dirtdog,
First, you have the logic back-to-front; you want:
next if !$ex_date; next if !defined($ex_date);
or
next unless ex_date; next unless defined($ex_date);
Second, the two statements are not equivalent. The first will skip to the next record if $ex_date has the value of 0 (zero), "" (the null string), or undef. See perlsyn#Truth-and-Falsehood. The second statement will skip only if $ex_date is undef.
Which form to use depends on how you define “null.” If by null you mean false, then use the first form; but if you mean undefined, then the second form is the one you want. Without more information, it’s difficult to guess which meaning of “null” best suits your needs; but the second interpretation (null means undef) is usually the safer option.
Hope that helps,
| Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
In reply to Re: Checking Variable for Not Null
by Athanasius
in thread Checking Variable for Not Null
by dirtdog
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |