Re: Getting a 'newline' out of a string
| From: | Tijnema | Date: | Fri, 10 Aug 2007 17:04:43 +0000 |
| Subject: | Re: Getting a 'newline' out of a string | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-260620@lists.php.net to get a copy of this message | ||
On 8/10/07, Stut <stuttle@gmail.com> wrote:
> Faither wrote:
> > I'm kind of lost with how str_replace , preg_replace, ereg_replace or
> > even explode are handling a "\n"-ewline.
> >
> > I have a text string from a form and am trying to replace the "\n" or
> > chr(10) or however you might call the newline with a simple html break tag.
> >
> > If I use the replacing functions I get the <br>-tags where there are
> > newlines from the textarea of the form. BUT I still have the newlines
> > remain.
> >
> > So I tried a different approach breaking the text down into an array using:
> > explode(' ', $string)
> > in conjunction with trim() and again made a string out of the array. -
> > <br>-tags still there, newlines aswell -.-'
> >
> > Next thing I tried was exploding the string using the "\n" and chr(10).
> > This function ignored all newlines and gave me an array with one key and
> > the entire text of the textarea as value.... Oh... and the newlines of
> > course were there aswell...
> >
> > So... How can I get rid of these?! - I just want them gone!
> >
> > Is it even possible under windows? ^^
>
> First of all look at http://php.net/nl2br which does exactly
> what you're
> trying to do.
>
> Second try this...
>
> $string = str_replace("\r\n", '<br />', $string);
> $string = str_replace("\n", '<br />', $string);
>
> -Stut
>
You forgot the Macintosh newlines, which is a single carriage return.
Try this code instead:
$string = str_replace("\r\n", '<br />', $string);
$string = str_replace("\n", '<br />', $string);
$string = str_replace("\r", '<br />', $string);
Tijnema
--
Vote for PHP Color Coding in Gmail! -> http://gpcc.tijnema.info