Zend_Validate_NotEmptyの注意点

いまさらなんですが、気づいたのでメモしておきます。

Zend_Validate_NotEmptyですが、クラスの中ではphpのemptyメソッドを利用して
判定が行われているので、判定結果もemptyメソッドの処理結果と同様になります。

以前emptyメソッドではまったところなんですが、’0’は空と判定されるのです。
empty(‘0’)は true が判定結果として返されます。

入力チェックで、0 を許容したいところには、Zend_Validate_NotEmptyは使えません。

0 の1文字を許容するところは、数値の入力欄だと思うので、
Zend_Validate_Digitsを利用するといいです。
これは、クラス内で $value === ” という判定を行ってくれますので、
正確に空を判定することができます。

Zend_Validate_NotEmptyの注意点