PHPのhtmlspecialcharsを使いつつ改行する

 

 

 

 

改行サンプル1
改行サンプル2
改行サンプル3

 


上の表示は、下のコードによって表示されているの

 

 

 

改行サンプル1<br>改行サンプル2<br>改行サンプル3<br>

 

 

 

 

これが掲示板とかのコメント表示だとしたら、「クロスサイトスクリプティング対策」のために「htmlspecialchars」関数でHTML タグを使えなくしてから、echoとかで出力した方がいいんだ。

 

 

 

でも、下のように「htmlspecialchars」関数を使うと、改行が<br>と表示されてしまうの。 <br>だけは改行として扱ってほしいよね。

 

 

<?php
$kaigyou_com = '改行サンプル1<br>改行サンプル2<br>改行サンプル3<br>';
$kaigyou_com = htmlspecialchars($kaigyou_com, ENT_QUOTES, 'UTF-8'); echo $kaigyou_com
?>

 

 

【実行結果】

改行サンプル1<br>改行サンプル2<br>改行サンプル3<br>

 

 

だからね、「str_replace」関数で、一旦、<br>を「改行するよ」の文字列に置き換えてから、「htmlspecialchars」関数を通して。。。 その後に、また「str_replace」関数で、「改行するよ」を<br>に戻すんだ。

 

 

 

<?php
$kaigyou_com = '改行サンプル1<br>改行サンプル2<br>改行サンプル3<br>';
$kaigyou_com = str_replace('<br>','改行するよ', $kaigyou_com);
$kaigyou_com = htmlspecialchars($kaigyou_com, ENT_QUOTES, 'UTF-8');
$kaigyou_com = str_replace('改行するよ','<br>', $kaigyou_com);
echo $kaigyou_com
?>

【実行結果】

改行サンプル1
改行サンプル2
改行サンプル3

 

 


今日のいーちゃん、なんか頭よさそうに見えるね

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

お名前


削除キー(必須)

コメント(必須)


サイト内検索

twiter

CONTENTS

 

 

 

くるくるサンプルコード

 

 

 

【↓広告↓】