str_replace() służy do zamiany fragmentów tekstu w łańcuchu znaków. Funkcja wyszukuje wskazany tekst i zastępuje go innym tekstem. Domyślnie zamienia wszystkie wystąpienia, a nie tylko pierwsze.
Składnia
str_replace($szukaj, $zamien_na, $tekst);
Parametry:
- $szukaj - tekst, który ma zostać znaleziony,
- $zamien_na - tekst, który ma zastąpić znalezione fragmenty,
- $tekst - tekst źródłowy, w którym wykonywana jest zamiana.
Przykład
$a = "Jan Kowalski, Anna Kowalski, Piotr Kowalski";
$a = str_replace("Kowalski", "Nowak", $a);
echo $a;
Wynik:
Jan Nowak, Anna Nowak, Piotr Nowak
W przykładzie wszystkie wystąpienia słowa Kowalski zostały zamienione na Nowak.
Ważne na egzaminie
Kolejność argumentów ma znaczenie:
str_replace("co_zamienic", "na_co_zamienic", "gdzie_zamienic");
Poprawne polecenie dla zamiany Kowalski na Nowak w zmiennej $a to:
$a = str_replace("Kowalski", "Nowak", $a);
Błąd często polega na odwróceniu pierwszych dwóch argumentów. Zapis str_replace("Nowak", "Kowalski", $a) wykonałby odwrotną operację: zamieniłby słowo Nowak na Kowalski.