# str_ireplace

(PHP 5, PHP 7, PHP 8)

str_ireplace — Groß- und kleinschreibungsunabhängige Version von str_replace()

### Beschreibung

str_ireplace(
array|string `$search`,
array|string `$replace`,
string|array `$subject`,
int `&$count` = `null`
): string|array

Die Funktion gibt einen String oder ein Array zurück, in dem alle Vorkommen von `search` innerhalb von `subject` unabhängig von deren Groß- oder Kleinschreibung gegen den entsprechenden `replace`-Wert ausgetauscht wurden.

Um Text anhand eines Musters statt einer konkreten Zeichenkette zu ersetzen, kann preg_replace() mit dem Suchmuster-Modifikator `i` verwendet werden.

### Parameter-Liste

Wenn `search` und `replace` Arrays sind, nimmt str_ireplace() einen Wert von jedem Array und sucht/ersetzt mit diesen im `subject`. Wenn `replace` weniger Werte als `search` besitzt, wird eine leere Zeichenkette für die verbleibenden Ersetzungswerte verwendet. Wenn `search` ein Array ist und `replace` eine Zeichenkette, wird dieser Ersetzungswert für alle Werte des `search` genutzt. Die Umkehrung jedoch wäre sinnlos.

Wenn `search` oder `replace` Arrays sind, werden ihre Elemente in aufsteigender Reihenfolge bearbeitet.

`search`

  Der gesuchte Wert, auch Nadel (needle) genannt. Ein Array kann genutzt werden, um mehrere Nadeln zu bestimmen.

`replace`

  Der Ersetzungswert, der gefundene `search` Werte ersetzt. Ein Array kann genutzt werden, um mehrere Nadeln zu bestimmen.

`subject`

  Die zu durchsuchende und darin ersetzende Zeichenkette oder das Array, auch Heuhaufen (haystack) genannt.

  Ist `subject` ein Array, wird die Suchen-Ersetzen-Funktionalität auf jedes Element von `subject` angewendet. Die Funktion gibt dann natürlich ein Array zurück.

`count`

  Falls übergeben, wird dies auf die Anzahl der durchgeführten Ersetzungen gesetzt.

### Rückgabewerte

Gibt eine Zeichenkette oder ein Array mit ersetzten Werten zurück.

### Changelog

Version | Beschreibung
--- | ---
8.2.0 | Die Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale() eingestellten Locale ab. Es wird nur noch die Groß- und Kleinschreibung von ASCII-Bytes verglichen. Nicht-ASCII-Bytes werden nach ihrem Byte-Wert verglichen.

### Beispiele

Beispiel #1 str_ireplace()-Beispiel

`<?php
$bodytag = str_ireplace("%body%", "schwarz", "<body text=%BODY%>");
echo $bodytag; // <body text=schwarz>
?>`

### Anmerkungen

> Hinweis: Diese Funktion ist binärsicher.

Achtung

# Überraschende Reihenfolge der Ersetzungen

Da str_ireplace() von links nach rechts ersetzt, kann sie einen zuvor behandelten Wert ersetzen, falls mehrere Ersetzungen durchgeführt werden. Beispiel #2 in der Dokumentation von str_replace() zeigt die Auswirkungen in der Praxis.

### Siehe auch

- str_replace() - Ersetzt alle Vorkommen des Suchstrings durch einen anderen String
- preg_replace() - Sucht und ersetzt mit regulären Ausdrücken
- strtr() - Tauscht Zeichen aus oder ersetzt Zeichenketten

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open