Функция PHP str_replace()
Пример
Замените символы «мир» в строке «Hello world!» с "Петром":
<?php
echo str_replace("world","Peter","Hello world!");
?>
Определение и использование
Функция str_replace() заменяет некоторые символы в строке другими символами.
Эта функция работает по следующим правилам:
- Если искомая строка является массивом, она возвращает массив
- Если искомая строка представляет собой массив, поиск и замена выполняются для каждого элемента массива.
- Если и find, и replace являются массивами, а replace содержит меньше элементов, чем find, в качестве замены будет использоваться пустая строка.
- Если find представляет собой массив, а replace — строку, строка замены будет использоваться для каждого найденного значения.
Примечание. Эта функция чувствительна к регистру. Используйте функцию str_ireplace() для выполнения поиска без учета регистра.
Примечание. Эта функция безопасна для двоичных файлов.
Синтаксис
str_replace(find,replace,string,count)
Значения параметров
Parameter | Description |
---|---|
find | Required. Specifies the value to find |
replace | Required. Specifies the value to replace the value in find |
string | Required. Specifies the string to be searched |
count | Optional. A variable that counts the number of replacements |
Технические детали
Возвращаемое значение: | Возвращает строку или массив с замененными значениями |
---|---|
Версия PHP: | 4+ |
Список изменений: | Параметр count был добавлен в PHP 5.0 . До PHP 4.3.3 эта функция испытывала проблемы при использовании массивов как в качестве параметров поиска , так и в качестве параметров замены , из-за чего пустые индексы поиска пропускались без перемещения внутреннего указателя на массив замены . В новых версиях этой проблемы не будет. Начиная с PHP 4.0.5, большинство параметров теперь могут быть массивами. |
Дополнительные примеры
Пример
Использование str_replace() с массивом и переменной count:
<?php
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Replacements: $i";
?>
Пример
Использование str_replace() с меньшим количеством элементов для замены, чем для поиска:
<?php
$find = array("Hello","world");
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_replace($find,$replace,$arr));
?>
❮ Справочник по строкам PHP