Функция 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));
?>

Запуск примера