Der PHP Verkettungsoperator ist eine der wichtigsten Verkettungen von Strings in PHP. Die String-Verkettung ist eine sehr häufige und nützliche Operation in PHP. In diesem Abschnitt wirst du lernen, wie du verschiedene Strings miteinander verketten kannst, indem du sie voranstellst, anhängst oder an einer bestimmten Position miteinander verkettest.
PHP Programmierer buchen!
Die Verkettung von Strings in PHP durch Anhängen oder Voranstellen ist eigentlich ganz einfach: Es gibt zwei String-Operatoren in PHP, die speziell für diesen Zweck gedacht sind.
Du kannst den Verkettungsoperator . verwenden, wenn du Strings zusammenfügen und das Ergebnis einer dritten Variablen zuweisen oder ausgeben willst. Dies ist nützlich sowohl zum Anhängen als auch zum Voranstellen von Strings, je nach ihrer Position.
Hier ist ein Beispiel, das zeigt wie man Strings einem Namen voranstellt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
<!DOCTYPE html> <html> <body> <?php $anreden = ['Hi', 'Hallo', 'Hey']; foreach($anreden as $anrede) { $text = $anrede.' Melanie!'; echo $text; } //Die Ausgabe lautet: /* Hi Melanie! Hallo Melanie! Hey Melanie! */ ?> </body> </html> |
Du kannst den verkettenden Zuweisungsoperator .= verwenden, wenn du die Strings verbinden und das Ergebnis derselben Variablen zuweisen möchtest. Dies ist im Grunde genommen eine kürzere Art, das Argument auf der rechten Seite an das Argument auf der linken Seite anzuhängen.
Hier ist ein Beispiel, das zeigt, wie man Strings an eine Variable anhängt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<!DOCTYPE html> <html> <body> <?php $namen = ['Melanie', 'Florian', 'Fatou']; foreach($namen as $name) { $anrede = 'Hallo '; $anrede .= $name; echo $anrede; } //Die Ausgabe lautet: /* Hallo Melanie Hallo Florian Hallo Fatou */ ?> </body> </html> |
Es gibt zwei häufige Fälle, in denen man Strings an einer anderen Stelle als dem Anfang oder dem Ende des Strings verbinden muss. Dies sind die Teilung des Hauptstrings nach einer bestimmten Anzahl an Zeichen (Index) oder die Teilung des Hauptstrings nach einem bestimmten Wort.
Verkettung von Strings nach einer bestimmten Anzahl Zeichen (Index)
Wir können die substr()-Funktion in PHP verwenden, um den Hauptstring an der gewünschten Stelle in zwei Teile aufzuteilen und dann die Teile wieder mit unserem String in der Mitte zusammenzufügen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<!DOCTYPE html> <html> <body> <?php $hauptstrings = ['Hallo, schön dich zu sehen!', 'Hallo, wie geht es dir?']; $index = 5; foreach($hauptstrings as $string) { $text = substr($string, 0, $index).' Melanie'.substr($string, $index); echo $text."\n"; } // Hallo Melanie, schön dich zu sehen! // Hallo Melanie, wie geht es dir? ?> </body> </html> |
Im obigen Code entspricht der Wert der Variablen $index der Position (Anzahl der Zeichen im String), an der wir unseren Teilstring innerhalb des Hauptstrings verketten möchten.
Die Verkettung eines Strings vor oder nach einem bestimmten Wort funktioniert im Prinzip genauso wie das Verbinden von Strings an einer bestimmten Indexposition. Es ist nur ein zusätzlicher Schritt nötig, um den entsprechenden Index zu ermitteln. Die Funktion strpos($haystack, $needle) ist für diesen Zweck perfekt geeignet. Sie findet die Position unseres $needle-Strings innerhalb des Haupttextblocks, des $haystack.
Hier ist ein Beispiel für die Verkettung von Strings vor einem bestimmten Wort:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<!DOCTYPE html> <html> <body> <?php $hauptstrings = ['Möchtest du kaufen?', 'Ich habe gehört, du möchtest kaufen.']; foreach($hauptstrings as $string) { $index = strpos($string, 'kaufen'); $text = substr($string, 0, $index).'Schokolade '.substr($string, $index); echo $text."\n"; } // Möchtest du Schokolade kaufen? // Ich habe gehört, du möchtest Schokolade kaufen. ?> </body> </html> |