PHPで文字コードのバリデーションと変換を同時に行う

PHP

PHPでテキストファイルを取り込んだ際はファイルの文字コードを気にする必要があります。その際に使えるであろうコードを記載します。

コード

説明

上記のコードでは

mb_detect_encoding($str,”UTF-8, SJIS, SJIS-win”);

にて文字コードのバリデーションを行っています。ここでは、エンコードタイプがUTF-8, SJIS, SJIS-win のみを許可しています。

後述しますが、使用するエンコードタイプは公式リファレンスを参照してください。

※mb_detect_encodingメソッドですが、文字コードの対応表的に?文字列が半角数字のみですとうまくバリデーションできません。

mb_convert_encoding($str, ‘UTF-8’, $encodingType);

文字列の変換にしようしている mb_convert_encodingメソッドは使用できるエンコードタイプは公式リファレンスに記載されています。 自分の使いたいものに合わせて選択してください。

コメント

タイトルとURLをコピーしました