开发者

delete the <br /> from the textarea?

I am trying to do a line break after the message "Original message", I have tried with this but It keeps showing开发者_如何学编程 me the

---Original message---<br />
message

<textarea id="txtMessage" rows="10" cols="50"><?php echo nl2br(str_replace('<br/>', " ","---Original message---\n".$array['message']));?></textarea>

I want something likes this:

---Original message---
message

any advise?


This should do what you want it to:

<?php echo str_replace('<br />', " ","---Original message---\n".$array['message']);?>

nl2br — Inserts HTML line breaks before all newlines in a string (from php.net)

Example:

echo "<textarea>HI! \nThis is some String, \nit works fine</textarea>";

Result:

delete the <br /> from the textarea?

But if you try this:

echo nl2br("<textarea>HI! \nThis is some String, \nit works fine</textarea>");

you will get this:

delete the <br /> from the textarea?

Therefore you should not use nl2br before saving it to database, otherwise you have to get rid of <br /> every time you try to edit text! Just use it when you print it out as text.


echo nl2br(str_replace('<br/>', " ", ... ));

should be

echo str_replace('<br />', ' ', ... );


The php function "nl2br" takes newlines, and converts them into br tags. If you don't want that, you should probably remove it :).

Heh, beaten by Ryan.


You're trying to replace <br/>, but the original text has <br /> (note the space).


You are removing the HTML breaks, then adding them back! Look at your code:

nl2br(str_replace('<br/>', " ","---Original message---\n".$array['message']))

First, str_replace replaces '<br/>' with a space. Then, nl2br adds a <br> for every newline (\n) it finds.

Remove nl2br call and it's done.


If you want to do nl2br on all of the text except for what's inside the textarea you could do this:

function clean_textarea_of_br($data) {
     return str_replace(array("<br>", "<br/>", "<br />"), "", $data[0]);
}

$message = preg_replace_callback('#<textarea[^>]*>(.*?)</textarea>#is',clean_textarea_of_br,$message);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜