「携帯サイト制作には欠かせないデータ入力チェック『Zend Validate』の派生クラスを公開します」の3つ目として電話番号の形式をチェックするクラスを公開します。
電話番号チェック
require_once 'Zend/Validate/Abstract.php';
class My_Validate_Telephone 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{1,5}-?\d{1,5}-?\d{1,5}$/';
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が形式に則っているかチェックします。