Zend_Formを使った電話番号入力用のフォームエレメントのサンプルコードです。
頻繁に使うのにすぐ忘れてしまうのでメモ
バリデートは000-000-0000でも0000000000と続いてもおkとします。
$this->addElement('text', 'tel', array(
'label' => 'お電話番号',
'required' => false,
'pattern' => '^0\d{1,4}[\s-]?\d{2,4}[\s-]?\d{4}$',
'placeholder' => '(例:000-000-0000)',
'class' => 'form-control',
'filters' => array('StringTrim'),
'Validators' => array(
array('Regex', false, array('/^0\d{1,4}[\s-]?\d{2,4}[\s-]?\d{4}$/',
'messages' => array(
Zend_Validate_Regex::NOT_MATCH => '0から始まる電話番号を正しく入力して下さい',
)))
),
'Decorators' => array('ViewHelper',array('Errors', 'options' => array('class' => 'alert alert-danger')))
));
ちなみにソースはZendFramework1系です。
コメント