PHPのMYSQLデータベースからページコンテンツを印刷しています。私は、DBへのユーザー入力を保管するときはphp htmlメタ記述タグから改行を削除
[「説明」] $行と呼ばれるデシベルでテキストフィールドを持っている私は(mysql_real_escape_stringのを使用)、私はHTMLを編集していないので、
問題は、私はのようにデシベルからこのフィールドを使用していますhtmlページのメタ記述タグ。したがって、ユーザが説明に改行を挿入すると、メタ記述タグ内のページのソースコードに改行が生じます。私はbr形式をスキップするループを使用して改行を削除しようとしました。私はbrに変換するnl2brを使用します。
$desc_array=(explode(" ", $row['description']));
for($i=0; $i < 17;$i++){
if(nl2br($desc_array[$i])=="<br />" || nl2br($desc_array[$i])=="<br/>"){
$i++;
}
私は私のSQLファイルをチェックし、改行は、私があまりにも
$desc_array[$i])=="\r\n\r\n"
$desc_array[$i])=="\r\n"
$desc_array[$i])=="\n"
$desc_array[$i])=="\r"
のように、このフォーマットをチェックしようとしていますが、まだ改行が説明に印刷されます
\r\n\r\n
として表示されますタグ。何か案は?
explodeを実行した後、 'var_dump($ desc_array)'を実行してみてください。各要素がどのようになるか、そしてどれくらい長くなるか(文字列の長さ)を正確に表示します。それは隠されたキャラクターがそこにあるのかあなたに考えを与えるでしょう。 –
var_dump()を試して、改行文字を表示していないようです。 ([14] => string(17) "バルコニーがあります。[15] => string(2)" is ")" balcony "の間に改行があることに注意してください。しかし、これは同じ文字列のちょっとした部分を示していますか? – daza166
ページソースを表示する - ブラウザのHTMLビューは、テキスト行区切り文字を受け入れず、非表示またはスペース文字として扱います。 –