String-Verkettung in PHP
German (Deutsch) translation by Ines Willenbrock (you can also view the original English article)
String-Verkettung ist eine sehr häufige und nützliche Operation in PHP. Es gibt viele Möglichkeiten, wie Sie Zeichenfolgen zusammenfügen können, wie das Anhängen oder Kombinieren von Zeichenfolgen.
In diesem kurzen Tipp zeige ich Ihnen die String-Verkettung in PHP. Sie erfahren, wie Sie Zeichenfolgen in PHP voranstellen oder anfügen und wie Sie Zeichenfolgen an bestimmten Positionen verketten.
Voranstellen und Anfügen von Zeichenfolgen in PHP
Das Verketten von Zeichenfolgen in PHP durch Anhängen oder Voranstellen ist eigentlich ziemlich einfach. Es gibt zwei String-Operatoren in PHP, die für diesen speziellen Zweck gedacht sind.
- Sie können den Verkettungsoperator
.verwenden, wenn Sie Zeichenfolgen verbinden und das Ergebnis einer dritten Variablen zuweisen oder ausgeben möchten. Dies ist sowohl für das Anhängen als auch für das Voranstellen von Zeichenfolgen je nach Position nützlich. - Sie können den verketteten Zuweisungsoperator
.=verwenden, wenn Sie die Zeichenfolgen verbinden und das Ergebnis derselben Variablen zuweisen möchten. Es ist ein kürzerer Weg, um das Argument auf der rechten Seite an das Argument auf der linken Seite anzuhängen.
Hier ist ein Beispiel, das zeigt, wie Strings in PHP angehängt werden:
1 |
<?php
|
2 |
|
3 |
$names = ['Adam', 'Andrew', 'Monty']; |
4 |
|
5 |
foreach($names as $name) { |
6 |
$greeting = 'Hello '; |
7 |
$greeting .= $name; |
8 |
echo $greeting; |
9 |
}
|
10 |
|
11 |
/*
|
12 |
Hello Adam
|
13 |
Hello Andrew
|
14 |
Hello Monty
|
15 |
*/
|
16 |
?>
|
Hier ist ein Beispiel, das verschiedenen Zeichenfolgen einem Namen in PHP voranstellt:
1 |
<?php
|
2 |
|
3 |
$greetings = ['Hi', 'Hello', 'Hey']; |
4 |
|
5 |
foreach($greetings as $greeting) { |
6 |
$text = $greeting.' Monty!'; |
7 |
echo $text; |
8 |
}
|
9 |
|
10 |
/*
|
11 |
Hi Monty!
|
12 |
Hello Monty!
|
13 |
Hey Monty!
|
14 |
*/
|
15 |
?>
|
Zusammenfügen von Strings an einem bestimmten Punkt
Es gibt zwei häufige Fälle, in denen Sie Zeichenfolgen an einer anderen Stelle als dem Anfang oder Ende einer Zeichenfolge verbinden müssen. Dabei wird die Hauptzeichenfolge an einem bestimmten Index geteilt oder die Hauptzeichenfolge nach einem bestimmten Wort geteilt. Wir werden diese beiden Situationen in diesem Abschnitt behandeln.
Zusammenfügen von Strings bei einem bestimmten Index
Wir können die substr()-Funktion in PHP verwenden, um die Hauptzeichenfolge am gewünschten Index in zwei Teile aufzuteilen und dann die Teile wieder mit unserer Zeichenfolge in der Mitte zu verbinden.
1 |
<?php
|
2 |
|
3 |
$main_strings = ['Do you apples?', 'Can we mangoes?']; |
4 |
|
5 |
$index = 7; |
6 |
foreach($main_strings as $string) { |
7 |
$text = substr($string, 0, $index).'eat '.substr($string, $index); |
8 |
echo $text."\n"; |
9 |
}
|
10 |
|
11 |
// Do you eat apples?
|
12 |
// Can we eat mangoes?
|
13 |
|
14 |
?>
|
Im obigen Code ist der Wert der Variablen $index einfach die Position, an der wir unsere Teilzeichenfolge innerhalb der Hauptzeichenfolge hinzufügen möchten.
Verketten von Zeichenfolgen vor oder nach einem bestimmten Wort
Das Verketten einer Zeichenfolge vor oder nach einem bestimmten Wort funktioniert genauso wie das Verbinden von Zeichenfolgen an einem bestimmten Index. Der einzige zusätzliche Schritt, den wir machen müssen, ist, den Index herauszufinden. Die Funktion strpos($haystack, $needle) ist für diesen Zweck perfekt. Es findet einfach die Position unserer $needle-Zeichenfolge im Haupttextblock oder $haystack.
Hier ist ein Beispiel für das Verketten von Zeichenfolgen vor einem bestimmten Wort.
1 |
<?php
|
2 |
|
3 |
$main_strings = ['Do you like apples?', 'They told me that they like apples very much.']; |
4 |
|
5 |
foreach($main_strings as $string) { |
6 |
$index = strpos($string, 'apples'); |
7 |
$text = substr($string, 0, $index).'eating '.substr($string, $index); |
8 |
echo $text."\n"; |
9 |
}
|
10 |
|
11 |
// Do you like eating apples?
|
12 |
// They told me that they like eating apples very much.
|
13 |
|
14 |
?>
|
Der große Unterschied hier ist, dass wir die $index Variable innerhalb unserer Schleife verschoben haben. Dies liegt daran, dass die Position unseres Wortes wahrscheinlich in jeder Zeichenfolge unterschiedlich sein wird und wir den Wert des Index entsprechend anpassen müssen.
Die Funktion strpos() gibt uns die Position des ersten Zeichens unserer Teilzeichenfolge innerhalb der Hauptzeichenfolge. Dies erleichtert es uns, Teilzeichenfolge am Anfang eines bestimmten Wortes zu verketten.
Beim Hinzufügen von Teilzeichenfolgen am Ende von Wörtern müssen wir auch die Länge der Wörter berücksichtigen. Wenn wir das Wort Länge zu unserem Anfangsindex hinzufügen, erhalten wir die richtige Position, um die Teilzeichenfolge am Ende eines bestimmten Wortes zu verketten.
1 |
<?php
|
2 |
|
3 |
$main_strings = ['Do you like New York?', 'They told me that they like New York very much.']; |
4 |
|
5 |
foreach($main_strings as $string) { |
6 |
$index = strpos($string, 'like') + strlen('like'); |
7 |
$text = substr($string, 0, $index).' visiting'.substr($string, $index); |
8 |
echo $text."\n"; |
9 |
}
|
10 |
|
11 |
// Do you like visiting New York?
|
12 |
// They told me that they like visiting New York very much.
|
13 |
|
14 |
?>
|
Letzte Gedanken
In diesem Kurztipp habe ich verschiedene Szenarien zum Verketten von Zeichenfolgen in PHP behandelt. Sie sollten nun in der Lage sein, die Zeichenfolgen an jeder anderen Position anzuhängen, voranzustellen oder zu verbinden.
Der Schlüssel zum Verbinden der Zeichenfolgen an einer bestimmten Stelle ist, einfach seinen Index zu finden. Das ist genau das, was wir getan haben, als wir Zeichenketten vor oder nach einem bestimmten Wort verketten wollten.
PHP lernen mit einem kostenlosen Online-Kurs
Wenn Sie PHP lernen möchten, schauen Sie sich unseren kostenlosen Online-Kurs zu PHP-Grundlagen an!
In diesem Kurs lernen Sie die Grundlagen der PHP-Programmierung. Sie beginnen mit den Grundlagen, lernen, wie PHP funktioniert und schreiben einfache PHP-Schleifen und -Funktionen. Anschließend bauen Sie Programmierklassen für eine einfache objektorientierte Programmierung (OOP) auf. Unterwegs lernen Sie alle wichtigen Fähigkeiten zum Schreiben von Apps für das Web: Sie können üben, auf GET- und POST-Anforderungen zu reagieren, JSON zu analysieren, Benutzer zu authentifizieren und eine MySQL-Datenbank zu verwenden.
- kostenlos


PHPPHP-GrundlagenJeremy McPeak



