
Originally Posted by
busboy
I am confused why the following code returns two X’s between each paragraph. I was expecting only one.
$paragraphs = str_replace("\n", “X", $paragraphs);
So then I figured there must be two line breaks in the text coming from the database. But when I tried the following code, there was no X at all between each paragraph.
$paragraphs = str_replace(“\n\n", “X", $paragraphs);
I’m clearly not understanding about something regarding line breaks. If it makes any difference, I’m working on a Mac, and I think they handle line breaks differently than a PC.
Chances are there were other bits stored in between the multiple \n's, which is why your second attempt didn't insert any X's.
When dealing with line breaks, I like to use preg_replace, because you can generally define a catch for all systems by using
PHP Code:
$paragraphs = preg_replace("/(\r\n|\r|\n)/", "X", $paragraphs);
It will attempt to find \r\n together, or a single \r or a single \n, thus covering the typical Operating System end lines.
Bookmarks