Функция PHP str_replace()
Пример
Заменить символы "world" в строке "Hello world!" на "Shanghai":
<?php echo str_replace("world","Shanghai","Hello world!"); ?>
Определение и использование
Функция str_replace() заменяет некоторые символы строки другими символами (различает регистр).
Эта функция должна следовать следующим правилам:
- Если строка поиска является массивом, то она вернет массив.
- Если строка поиска является массивом, то она будет искать и заменять каждый элемент массива.
- Если необходимо одновременно искать и заменять в массиве, и количество элементов для замены меньше, чем количество найденных элементов, то избыточные элементы будут заменены пустой строкой
- Если ищется массив, а заменяется строка, то замещающая строка будет действовать на все найденные значения.
Комментарий:Эта функция различает регистр. Используйте str_ireplace() Функция поиска не различает регистр.
Комментарий:Эта функция безопасна для работы с двоичными данными.
грамматика
str_replace(find,replace,string,count)
Параметры | Описание |
---|---|
find | Обязателен. Определяет значение, которое нужно найти. |
replace | Обязателен. Определяет замену find значений значений в |
string | Обязателен. Определяет строку, которую нужно найти. |
count | Опционально. Переменная для подсчета замен. |
Технические детали
Возвратное значение: | Возвращает строку или массив с замененными значениями. |
Версия PHP: | 4+ |
Журнал обновлений: |
В PHP 5.0 были добавлены count параметры. До PHP 4.3.3 функция имела find и replace При использовании всех параметров как массивов могут возникнуть проблемы, которые приведут к пустому find Индекс внутренней указатель не обновлен replace При использовании с массивом игнорируется. В новых версиях这个问题 не будет. С PHP 4.0.5 большинство параметров может быть массивом. |
Более примеров
Пример 1
Использование с массивом и count Функция str_replace() переменных:
<?php $arr = array("blue","red","green","yellow"); print_r(str_replace("red","pink",$arr,$i)); echo "Количество замен: $i"; ?>
Пример 2
Использование функции str_replace() с количеством элементов, которые нужно заменить, меньше, чем количество найденных элементов:
<?php $find = array("Hello","world"); $replace = array("B"); $arr = array("Hello","world","!"); print_r(str_replace($find,$replace,$arr)); ?>