※ ChatGPTを利用し、要約された質問です(原文:全角カナチェックが動作しません)
全角カナチェックが正常に動作しない
このQ&Aのポイント
全角カナチェックの動作が正常に行われず、ひらがながカタカナと認識されてしまいます。
問題のコードでは、文字エンコードをUTF-8に設定し、全角カナチェックを行っています。
改善するには、正規表現の記述を見直し、正しいカタカナの判定を行う必要があります。
下記のコードでカタカナチェックを行ったのですが
正常に動作しません。
ひらがながカタカナと認識されてしまいます。。
どのように改善したらよいでしょうか・・・
<META http-equiv="Content-Type" content="text/html;charset=utf-8">
<?php
/*文字エンコードはutf-8で全角カナチェックする*/
mb_regex_encoding("utf-8");
mb_internal_encoding("utf-8");
$data1="ひらがなはだめなのに";
$data2="アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンガギグゲゴザジズゼゾダヂヅデドパピプペポバビブベボッァィゥェォャュョヮー";
if(!ereg("^[$data2]+$",$data1))
print "不正な文字が使用されてます";
?>
お礼
回答とても助かりました。 mb_regex_encodeingで設定して完璧だと思ったのですが、使ってる関数をしっかりチェックしてませんでした。 【マルチバイトとシングルバイト】 http://kemuri-net.dip.jp/~server/php/sample/mbstr.php