【No.4】郵便番号チェック – Zend Validateの派生クラスを公開します

By nakayama - 09/02/20 - このエントリをはてなブックマークに追加このエントリをYahoo!ブックマークに追加このエントリをdel.icio.usに追加このエントリをFC2ブックマークに追加

「携帯サイト制作には欠かせないデータ入力チェック『Zend Validate』の派生クラスを公開します」の4つ目として郵便番号の形式をチェックするクラスを公開します。

郵便番号チェック



require_once 'Zend/Validate/Abstract.php';


class My_Validate_PostCode extends Zend_Validate_Abstract
{
    const INVALID = 'Invalid';

    /**
     *  @var array
     */
    protected $_messageTemplates = array(
        self::INVALID => '%sの形式が不正です'
    );
    
    
    /**
     * Defined by Zend_Validate_Interface
     * 
     * 郵便番号が不正でないか検証
     * 
     * @param  string  $value
     * @return boolean
     */
    public function isValid($value)
    {
        $valueString = (string) $value;

        $this->_setValue($valueString);

        $regex = '/^\d{3}-?\d{4}$/';

        if (preg_match($regex, $value, $matches)) {
            return true;
        } else {
            $this->_error(self::INVALID);
            return false;
        }
    }
    
}

その他Zend Validate派生クラス

【No.1】. ひらがなチェック

データにひらがな以外の文字があるかチェックを行ないます。

【No.2】.メールアドレスチェック

携帯電話で使われているメールアドレスをチェックを行ないます。

【No.3】. 電話番号チェック

電話番号の形式になっているかチェックします。

【No.4】. 郵便番号チェック

郵便番号の形式になっているかチェックします。

【No.5】.全角文字数チェック

全角文字数の最小、最大数をチェックします。

【No.6】.全角カタカナチェック

データに全角カタカナ以外の文字があるかチェックを行ないます。

【No.7】.厳密な未入力チェック

『0』と『null』を区別した入力チェックを行ないます

【No.8】.URLチェック

URLが形式に則っているかチェックします。