Funkcja str_replace() w PHP

Przykład

Zastąp znak "world" w ciągu "Hello world!" na "Shanghai":

<?php
echo str_replace("world","Shanghai","Hello world!");
?>

Uruchomienie przykładu

Definicja i użycie

Funkcja str_replace() zastępuje niektóre znaki w ciągu znaków innymi znakami (rozróżnia wielkość liter).

Funkcja musi przestrzegać następujących zasad:

  • Jeśli wyszukiwany ciąg to tablica, to zwróci ona tablicę.
  • Jeśli wyszukiwany ciąg to tablica, to będzie ona przeszukiwana i zastępowana dla każdego elementu tablicy.
  • Jeśli jednocześnie należy wyszukiwać i zastępować w tablicy, a liczba elementów do zastąpienia jest mniejsza niż liczba znalezionych elementów, to nadmiarowe elementy będą zastępowane pustym ciągiem.
  • Jeśli wyszukiwane są tablice, a zastępowane są ciągi znaków, to ciąg zastępowujący będzie działał na wszystkie znalezione wartości.

Komentarz:Funkcja ta rozróżnia wielkość liter. Użyj str_ireplace() Funkcja wyszukiwania nie rozróżnia wielkości liter.

Komentarz:Funkcja jest bezpieczna dla binarnych.

język

str_replace(find,replace,string,count)
Parametry Opis
find Wymagane. Określa wartość do wyszukiwania
replace Wymagane. Określa zastąpioną wartość find wartości wartości w
string Wymagane. Określa wyszukiwaną ciąg znaków.
count Opcjonalnie. Zmienna licząca liczbę zastąpień.

Szczegóły techniczne

Wartość zwracana: Zwraca ciąg znaków lub tablicę z wartościami zastąpionymi.
Wersja PHP: 4+
Dziennik aktualizacji:

W PHP 5.0 dodano count parametrów.

Przed PHP 4.3.3 parametry funkcji find i replace Kiedy wszystkie parametry są tablicami, może pojawić się problem, który spowoduje pustą find Indeks wewnętrznego wskaźnika nie został zmieniony replace Zostanie zignorowana na tablicy. Nowe wersje nie będą miały tego problemu.

Od PHP 4.0.5 większość parametrów może być tablicą.

Więcej przykładów

Przykład 1

Użycie z tablicą i count Funkcja str_replace() zmiennej:

<?php
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Liczba zastąpień: $i";
?>

Uruchomienie przykładu

Przykład 2

Użyj funkcji str_replace() z mniej elementów do zastąpienia niż znalezionych elementów:

<?php
$find = array("Hello","world");
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_replace($find,$replace,$arr));
?>

Uruchomienie przykładu