Функция str_replace не работает - PullRequest
       0

Функция str_replace не работает

1 голос
/ 22 сентября 2011

У меня проблема с функцией str_replace ().У меня есть этот код:

$headImageName = "C:\Program Files\EasyPHP-5.3.3.1\www\realitka/headImages/hImageMini4e7b5a6ea8c95Pyro.png";

die(var_dump(str_replace("C:\Program Files\EasyPHP-5.3.3.1\www\realitka/", "", $headImageName)));

И результат var_dump снова:

string(88) "C:\Program Files\EasyPHP-5.3.3.1\www\realitka/headImages/hImageMini4e7b5bae39148Pyro.png"

У вас есть идеи, в чем проблема?

Ответы [ 2 ]

7 голосов
/ 22 сентября 2011

\r в строке в двойных кавычках имеет особое значение.

PHP интерпретирует его как символ возврата каретки.

Либо используйте одинарные кавычки:

str_replace('C:\Program Files\EasyPHP-5.3.3.1\www\realitka/', "", $headImageMiniName)

Или экранируйте все слэши:

str_replace("C:\\Program Files\\EasyPHP-5.3.3.1\\www\\realitka/", "", $headImageMiniName)

См. список escape-последовательностей в двойных кавычках .

2 голосов
/ 22 сентября 2011

Вам нужно выбрать \ символов:

str_replace("C:\\Program Files\\EasyPHP-5.3.3.1\\www\\realitka/", "", $headImageName)
...