I've a MySQL database from which I extract a string which is a list of words separated by newline. Now I want to remove only the trailing newline.
I tried using preg_replace as
$string = preg_replace('/\n/','',$string);
It works, but all the newlines in the strings are removed :(
How can I do this?
You need to add the end of line anchor:
$string = preg_replace('/\n$/','',$string);
It's better to avoid regular expressions for such a simple substitution. This can easily be done using rtrim as:
$string = rtrim($string);
rtrim
without the second argument will remove the trailing whitespace characters which include: