下記の様な、全角カナに変換して全角カナかどうかのチェックする処理があったとします。
if(isset($_POST['name3'],$_POST['name4'])){ $name3 = mb_convert_kana($_POST['name3'],"K"); $name4 = mb_convert_kana($_POST['name4'],"K"); if (preg_match("/^[ァ-ヶー]+$/u", $name3.$name4)) { $error = $name3.$name4; return $error; } else { $error = "カタカナで入力してください"; return $error; }
テスト用の表示用のコードは別のところにあるのですがそこは割愛させてください。
例えば、
ヤマダと入力すれば「ヤマダ」と表示されますが
ヤマダと入力すると「カタカナで入力してください」
が表示されてしまいます。
全角カナに変換してからチェックに入っているはずなのに、何故チェックでtrueにならないんでしょうか?

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/06 09:55