开发者

How can I make this string from a 'textarea' to be on one single line?

I have tried and tried and tried now.

I have a mysql field (TEXT) which contains the value of a textarea. That is, if the text is written EXACTLY like this:

   Hello. Hello.
   Hello.
   Hel
   lo.

Then thats how it will appear in the mysql field because Im using wordwrap and nl2br functions when inserting it there.

Now, I am creating a dynamic page, where the 'meta description content' is updated with the 'TEXT' content, BUT, in one long string without any breaks and new lines.

That said, I need to make text to be in one string.

I have used this:

  str_replace ("<br/>", "", $string);

This displays the text as one string, yes, but when viewing the source code of the page, you can see that the breaks are there, like this:

<meta name="description" content="
   Hello. Hello.
   Hello.
   Hel
   lo." />

I 开发者_运维百科have also tried replacing the

with '\n' and others, without success...

How can I solve this irritating problem?

Let me know if you need more input, and I will update this Q.


Replace all groups of whitespace with a single space:

$output = preg_replace('!\s+!', ' ', $input);


Try replacing "\n" with "" instead.


handy function:

function removeEmptyLines($s) {
return preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $s);
}


You might try to something like this str_replace("\n\r", "", $string); I have found that sometimes the return character \r is hiding in there someplace.

0

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜