タグ

encodeに関するbillie175のブックマーク (2)

  • PHPの文字エンコーディング検出はアテにならない - Qiita

    一身上の都合で文字エンコーディングと戦った時のメモ PHPにおける文字列のエンコーディングはphp-mbstringモジュールで提供されている。 mb_detect_encodingはデフォルトではASCIIとUTF-8しかチェックしてくれない。 mb_detect_orderでチェックするエンコーディング形式を指定することができる。 だがしかし、対して検出精度はよくない。 不適切なエンコーディングで変換された場合、脆弱性になり得る。 テスト環境 OS : CentOS7 PHP : 7.0.11 エンコードテスト UTF-8の文字列をmb_convert_encodingで各文字エンコーディングで変換し、mb_detect_encodingとmb_check_encodingで検出させる。 $str = 'てすと'; $enc = [ 'UTF-8', 'UTF-7', 'ASCII',

    PHPの文字エンコーディング検出はアテにならない - Qiita
  • Encode 日本語などのマルチバイト文字列を適切に処理する - Perl入門〜サンプルコードによるPerl入門〜

    Perl › モジュール › here 日語などのマルチバイト文字をPerlで適切に扱うにはEncodeモジュールを使用します。次の3つのことを覚えておけば多くの場合適切に日語を扱うことができます。 外部から入力された文字列はEncodeモジュールのdecode関数でデコードする 外部へ出力する文字列はEncodeモジュールのencode関数でエンコードする ソースコードはUTF-8で保存しutf8プラグマを有効にする この解説での用語 この解説では外部から入力された文字列のことを「バイト文字列」と呼ぶことにします。Perlの内部表現に変換された文字列を「内部文字列」と呼ぶことにします。また「バイト文字列」が特定の文字コードで記述されている場合は「UTF-8バイト文字列」「Shift_JISバイト文字列」などと呼ぶことにします。 プログラミングで日語を扱う場合にその文字列がバイト文字

    Encode 日本語などのマルチバイト文字列を適切に処理する - Perl入門〜サンプルコードによるPerl入門〜
  • 1