stripcslashes does not simply skip the C-style escape sequences \a, \b, \f, \n, \r, \t and \v, but converts them to their actual meaning.
So
<?php
stripcslashes('\n') == "\n"; //true;
$str = "we are escaping \r\n"; //we are escaping
?>
(PHP 4, PHP 5, PHP 7, PHP 8)
stripcslashes — Удаляет экранирование символов, произведённое функцией addcslashes()
Удаляет экранирующие обратные слеши. Распознает экранирование в стиле
C (\n
, \r
..., восьмеричное
и шестнадцатеричное представление).
string
Строка, у которой нужно убрать экранирование.
Возвращает неэкранированную строку.
Пример #1 Пример использования stripcslashes()
<?php
var_dump(stripcslashes('I\'d have a coffee.\nNot a problem.') === "I'd have a coffee.
Not a problem."); // true
?>
stripcslashes does not simply skip the C-style escape sequences \a, \b, \f, \n, \r, \t and \v, but converts them to their actual meaning.
So
<?php
stripcslashes('\n') == "\n"; //true;
$str = "we are escaping \r\n"; //we are escaping
?>
you might want to do a double stripslashes to completely remove 3 consecutive slashes
$stripped = 'this is a string with three\\\ slashes';
$stripped = stripslahses($stripped);
would output:
'this is a string with three\ slashes'
$stripped = 'this is a string with three\\\ slashes';
$stripped = stripslahses(stripslashes($stripped));
would output:
'this is a string with three slashes'