ある文字列が半角のみでできていること、 つまり全角文字が含まれていないこと、 を確認したいことがたまにある。 そのやり方としていろんな人がいろんなことを書いていて 正規表現を使うものが多いと思うんだけど、 こんなんでもいいんじゃないかな。 if (strlen($str) === mb_strlen($str)) { return true; } else { return false; } シングルバイト扱いでの長さとマルチバイト扱いでの長さが同じなら半角。 これに文字エンコーディングの指定や半角カナ、制御文字の扱いを含めたら こんな感じでしょうか。 半角カナを許可するなら $include_kana を true に。デフォルト値は false. 改行やタブなども許可するなら $include_controls を true に。デフォルト値は false. 入力文字列 $str の文