

フレームワークを使わず生のPHPでバリデーションチェックの勉強中ですが、画面における入力エラーチェックで一般的に「全角でも半角でもなければエラー」というのは機種依存文字が入力されたらエラーということでしょうか。


CC BY-SA 4.0
2019-11-01T04:06:24.487
60172
2019-11-01T05:38:54.517
17348
question
php
入力チェックにおける全角でも半角でもなければエラー


２０世紀においては「日本語の漢字」の符号化方式として Shift-JIS と EUC の２方式が主流でした。その時代は半角とは 1byte 全角とは
2byte の意味で使われていました。また NEC PC98 と IBM PC/AT で文字セットが異なり機種依存文字ってのがありました。

２１世紀である今は文字セットが UNICODE 符号化方式は UTF-8 に切り替わっている（断言）関係で、昔でいう半角全角はほとんど意味がありません（
UNICODE の East_Asian_Width はありますがほぼ間違いなく区別不要）文字セットも UNICODE
に統一されているので「機種依存文字」も、もはやありません (UNICODE の Version 違いで文字化けはありうる)

なので回答とするなら

  * 全角・半角・機種依存文字を区別していた時代がかつてあった (20 世紀)
  * 21 世紀では、そういう区別はしなくなっている
  * 必然的にバリデーションの意味や内容も違ってきている

となり、その「バリデーション」の教科書っつか参考書が古すぎて現代的ではありません。違う文献を参考にするようにしたいです。


CC BY-SA 4.0
2019-11-01T05:38:54.517
60174
2019-11-01T05:38:54.517
8589
60172
answer