htmlフォームからphpへ送られるデータは様々あります。
NGワードを含むデータがあった場合にNGワード部分を伏字に加工したりデータの改行コードを反映させて表示できるように加工したりと色々加工したくなる場面があります。
そんな時に便利な関数がPHPには用意されています。
変数の内部を検索し置換する方法
■str_replace
変数の内部を検索し置換する命令です。
str_replaceは全検索しヒットした物全てを変換します。
str_replace(検索する文字,置換後の文字,検索される文章)
置換された文章が返り値になります。
例1:
<form method="post"> <input type="submit" name="botan" value="send">ボタン <textarea name="data" cols="10" rows="2" wrap="hard" maxlength="10"> 初期値の文字 </textarea> </form> <?php $moji=str_replace("\r\n","<br>",$_POST["data"]); print $moji; echo "<BR><BR>"; print $_POST["data"]; ?>
この例では$_POST[“data”]をShift_JISの改行コードである「\r\n」を「<br>」に置き換えるようにstr_replaceに渡しています。
そしてstr_replaceから返ってくるを$mojiで受け取っています。
この$mojiを表示すると、このように改行表示するようになってます。
実際に実行すると
サンプル
のようになります。
ただし、改行コードはUnicodeやShift_JIS等の文字コードの種類によって違いますので次回紹介する「nl2br」を使う場合の方が多いようです。