概要
閲覧数:1233
投稿日:2015-12-11
更新日:2015-12-12
郵便番号だけを許可
・XXX-YYYYあるいはXXXYYYY
・半角数字だけを許可
mixed preg_match($pattern,$string)
・Perl互換正規表現関数の一つ
・文字列$patternで指定したPerl互換正規表現により、文字列$stringを検索する
・具体的には、第2引数の文字列へ対して、第1引数で指定した正規表現のパターンを実行
コード
$postalCode = '1000000'; //true $clean = array(); if ($postalCode && preg_match("/^[0-9]{3}-?[0-9]{4}$/", $postalCode)) { $clean["postalCode"] = $postalCode; } var_dump($clean); $postalCode = ''; $clean = array(); $postalCode = '200-0000'; //true if ($postalCode && preg_match("/^[0-9]{3}-?[0-9]{4}$/", $postalCode)) { $clean["postalCode"] = $postalCode; } var_dump($clean); $postalCode = ''; $clean = array(); $postalCode = '100000'; //桁数が足りないためfalse if ($postalCode && preg_match("/^[0-9]{3}-?[0-9]{4}$/", $postalCode)) { $clean["postalCode"] = $postalCode; } var_dump($clean); $postalCode = ''; $clean = array(); $postalCode = '100000!'; //半角数字以外のためfalse if ($postalCode && preg_match("/^[0-9]{3}-?[0-9]{4}$/", $postalCode)) { $clean["postalCode"] = $postalCode; } var_dump($clean);
結果
array(1) { ["postalCode"]=> string(7) "1000000" } array(1) { ["postalCode"]=> string(8) "200-0000" } array(0) { } array(0) { }