Remove trailing newline
Don't use regular expressions for such a trivial task. You can use PHP's rtrim()
(possibly with "\n"
as the second parameter) or substr()
(like substr($string, 0, -1)
) or MySQL's RTRIM()
.
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:
- newline
- space
- vertical tab
- horizontal tab
- carriage return