PHP - 2 Wörter in einem String tauschen?

3 Antworten

Bleibt es immer bei 2 Wörtern?

Du kannst den String in ein Array Exploden.

$string = "Max Mustermann"

$stringToArray = explode(" ", $string)

//["Max"]
//["Mustermann"]

$newString = $stringToArray[1] . $stringToArray[0]
Babizo 
Fragesteller
 05.03.2020, 14:27

Gute Idee! Hmm angenommen es gäbe ein Doppelnamen. Gibt es dafür auch eine Lösung? Zum Beispiel, dass man das bis zu dem Komma trennt und dann in ein Array packt?

0
RainDrop123123  05.03.2020, 14:31
@Babizo

Du meinst "Max Peter Franz, Mustermann Schneider"? (Extrembeispiel)

Dann gibst du einfach das Komma als Delimeter an:

$string = "Max Peter Franz, Mustermann Schneider"

$stringToArray = explode(",", $string)

//["Max"]
//["Mustermann"]

newString = $stringToArray[1] . $stringToArray[0]

Hast du dir denn mal die PHP-Docs zu explode() angeschaut? Das ist relativ simpel.

1
Babizo 
Fragesteller
 05.03.2020, 14:32
@RainDrop123123

Ja genau das ist das was ich gesucht habe! Ich danke dir! :)

1

Das geht mit jeder Programmiersprache. Du musst zuerst die Stelle des Trennzeichens suchen und an Hand dieser Stelle und der Gesamtlänge die einzelnen Strings extrahieren und neu zusammensetzen.

In der Stringtheorie ist alles möglich

Max, Mustermann ist falsch, weil man den String weglässt. Wenn du den Nachname zuerst angibst, fügst du den Vorname mit einem String hinzu.

Babizo 
Fragesteller
 05.03.2020, 14:31

Ich vermute mal das du mit "String" das Komma meinst?
Das hilft mir hier leider nicht weiter. Das das Komma bei Max, Mustermann weg gelassen werden muss, das weiß ich selber. Das hätte ich mit einer cut Funktion erledigt. Mir ging es hier eher drum die Wörter in dem gesamten String zu tauschen (am besten zur Orientierung des Kommas).

0