テキストのHTML変換
テキスト文をHTMLに安全に出力できるように成型します。
DBやファイルから入力したデータをHTMLに出力する時などに使用します。
(1)HTMLタグの無効化(&"<>)
(2)スペースの変換(半角スペース → )
(3)タブの変換(\t → )
(4)改行コードの変換(\r\n,\r,\n → <br>)
伏字
電話番号
電話番号の数字部分を伏字。
カード番号
クレジットカード番号の上位桁を伏字にして、下4桁のみ出力
桁揃え
口座番号など、出力桁が固定の場合に数値を右詰で出力。
パスワード生成
乱数を使って8文字のパスワードを生成。
1(数字)とl(小文字のエル)、0(数字)とo(小文字のオー)を除く。
SJIS波ダッシュ対応
mb_convert_encodingでEUC→SJISに変換した時、何故か「〜」が「~」になってしまうため、力技で変換。
波ダッシュの文字コードはエディタに依存することを確認(EUCの場合)。
| 秀丸、Terapad | : | a1c1 |
| Eclipse、Netbeans | : | 8fa2b7 |
そのため、秀丸、Terapadで入力した「〜」はSJIS変換では正しく「8160」となりますが
Eclipse、Netbeansでは「7e」となってしまい、mb_convert_encodingで半角チルダ「~」に変換されてしまいます。
pack("H*", "A1C1")のように、文字コードを直接入力した方が確実です。
(例)$time = "11:00" . pack("H*", "A1C1") . "12:00";
mb_convert_encoding($time,"SJIS","EUC-JP"); の結果はどのエディタで編集しても 「11:00〜12:00」のように正しく変換されます。
※この事例はあくまでもファイルがEUCの場合で、UTF-8の場合は、どのエディタでも「efbd9e」になります。
EUC→SJISの場合は、エディタに要注意ということですね。
参考URL http://blog.rodoku.net/article/28326088.html