Как заменить "\" на str_replace() в PHP?

Я хотел бы удалить все обратные косые черты из строк на моем сайте. Я не хочу использовать strip_slashes(), потому что хочу сохранить косые черты.

Это код, который я пытаюсь сделать:

echo str_replace("\", "", "it\ Tuesday!");

Я хочу найти обратную косую черту в любой строке и удалить ее. Но этот код работает неправильно.

Ошибка:

syntax error, unexpected T_CONSTANT_ENCAPSED_STRING

Что я могу делать неправильно?

Ответ 1

Обратная косая черта фактически ускользает от заключительной цитаты в вашей строке.

Попробуйте echo str_replace("\\","","it\ Tuesday!");

Ответ 2

Не уверен, почему вы используете str_replace для удаления \ используйте

echo stripslashes("it\ Tuesday!");

Но если это просто пример, то

echo  str_replace("\\","","it\ Tuesday!");

Обратите внимание, что stripslashes удаляет только обратную косую черту не вперед

echo stripslashes("it\ \\ \\  // Tuesday!");

Выходы

it // Tuesday!

Ответ 3

Попробуйте получить результат:

$str = "it\ Tuesday!";

$remove_slash = stripslashes($str);

print_r($remove_slash);

Выход: это вторник!

Ответ 4

Из stripslashes() документация:

Возвращает строку с обратной косой чертой. ( "становится" и так.) Двойная обратная косая черта (\\) превращается в одну обратную косую черту (\).

Поэтому вам не стоит беспокоиться о fwd. косая черта.

Ответ 5

С

echo str_replace("\'", "'", "it\ Tuesday!");
// It Tuesday!