Эта функция возвращает строку или массив
subject, в котором все вхождения
search заменены
на replace. Если не нужны сложные правила
поиска/замены, использование этой функции предпочтительнее
ereg_replace()
или preg_replace().
С версии PHP 4.0.5, любой аргумент str_replace()
может быть массивом.
Внимание
В версиях младше 4.3.3 эта функция содержит ошибку при одновременной
передаче массивов в аргументах search и
replace. Ошибка заключается в том, что
пустые элементы массива search пропускались
без перемещения к следующему элементу массива
replace. Эта ошибка была исправлена
в PHP 4.3.3. Если ваши скрипты использовали эту
ошибку, то в них нужно удалить пустые элементы из массива
search перед вызовом этой функции.
Если subject - массив, поиск и замена
производится в каждом элементе этого массива, и возвращается также
массив.
Если и search, и
replace - массивы, то
str_replace() использует все значения массива
search и соответствующие значения массива
replace для поиска и замены в
subject. Если в массиве
replace меньше элементов, чем в
search, в качестве строки замены для
оставшихся значений будет использована пустая строка.
Если search - массив, а
replace - строка, то
replace будет использована как строка замены
для каждого элемента массива search.
// присваивает: Hll Wrld f PHP $vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U"); $onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
// присваивает: You should eat pizza, beer, and ice cream every day $phrase = "You should eat fruits, vegetables, and fiber every day."; $healthy = array("fruits", "vegetables", "fiber"); $yummy = array("pizza", "beer", "ice cream");
// начиная с версии 5.0.0 доступен аргумент count $str = str_replace("ll", "", "good golly miss molly!", $count); echo $count; // 2 ?>
Замечание: Эта функция безопасна
для обработки данных в двоичной форме.
Замечание:
Начиная с PHP 5.0.0 количество произведенных
замен может быть получено в необязательном аргументе
count, который передается по ссылке.
В версиях до PHP 5.0.0 этот аргумент недоступен.