Posted By: Anonymous
I am trying to simply replace some new lines and have tried three different ways, but I don’t get any change:
$description = preg_replace('/r?n|r/', '<br/>', $description); $description = str_replace(array("rn", "r", "n"), "<br/>", $description); $description = nl2br($description);
These should all work, but I still get the newlines. They are double: "rr". That shouldn’t make any of these fail, right?
There is already the
nl2br() function that inserts
<br> tags before new line characters:
<?php // Won't work $desc = 'Line onenline two'; // Should work $desc2 = "Line onenline two"; echo nl2br($desc); echo '<br/>'; echo nl2br($desc2); ?>
But if it is still not working make sure the text
$desciption is double-quoted.
That’s because single quotes do not ‘expand’ escape sequences such as
n comparing to double quoted strings. Quote from PHP documentation:
Note: Unlike the double-quoted and heredoc syntaxes, variables and escape sequences for special characters will not be expanded when they occur in single quoted strings.