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!"); ?>
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"; ?>
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)); ?>