www.PHP-Kurs.com

PHP lernen für Einsteiger
und Fortgeschrittene

PHP-Tutorial mit Videos

Sie befinden sich: Startseite » PHP lernen für Einsteiger » Funktionen von PHP » kommt Inhalt in Zeichenkette vor?

Kommt ein bestimmter Inhalt in einer Zeichenkette vor?

Oft muss überprüft werden, ob eine Zeichenkette (String) einen bestimmten Inhalt enthält. PHP-Funktionen wie str_contains() und strpos() helfen, um einfach zu überprüfen, ob eine Zeichenfolge (Suchstring) in einem vorgebenen String vorhanden ist.

Die PHP-Funktion str_contains() (ab PHP 8)

Mit PHP 8 wurde die Funktion str_contains() in den Befehlssatz von PHP integriert. Dadurch kann sehr einfach überprüft werden, ob ein String einen anderen String enthält. Diese Funktion achtet auf Groß- und Kleinschreibung! Als Rückgabewert erhalten wir true oder false

if (str_contains('abcdefghijklmnopqxyz', 'abc')) {
    echo "abc ist enthalten im String";
}

Da die Funktion str_contains() auf Groß- und Kleinschreibung achtet, bekommen wir ein false zurückgeliefert und im Beispiel die zweite Ausgabe erfolgt.

if (str_contains('abcdefghijklmnopqxyz', 'ABC')) {
    echo "abc ist enthalten im String";
} else {
    echo "ABC ist NICHT enthalten";
}

Die PHP-Funktion strpos()

Ein wenig aufwendiger war davor die PHP-Funktion strpos(). Hier wird zurückgeliefert, ab welcher Position die Zeichenkette auftaucht. Allerdings bekommen wir auch eine 0 zurückgeliefert, wenn gleich am Anfang die Zeichenkette sitzt.

$meinString = 'abcdefghijklmnopqxyz';
$findeMich   = 'abc';
$position = strpos($meinString, $findeMich);

Daher muss zum überprüfen das === verwendet werden!

$meinString = 'abcdefghijklmnopqxyz';
$findeMich   = 'abc';
$position = strpos($meinString, $findeMich);

if ($position === true) {
    echo "$findeMich ist enthalten im String";
} else {
    echo "$findeMich ist NICHT enthalten";
}