Wie du mit PHP substr deine Strings aufteilen kannst

    Logo der Programmiersprache PHP
    Avatarbild von Perica Glavas
    Perica Glavas

    veröffentlicht am: 09.04.2020
    zuletzt aktualisiert am: 06.02.2023

    PHP substr: Strings in PHP aufteilen

    Die PHP substr Funktion hilft dir dabei einen beliebigen Teil deines String zurückzugeben.
    Dabei ist die Funktion besonders nützlich, wenn du gewisse Teile einer Nutzereingabe prüfen und zuordnen willst.

    Wir werden dir in diesem Post die Funktion an einem praxisnahen Beispiel näher erläutern.

    Syntax der PHP substr Funktion

    substr(string, startpunkt, laenge);

    Du kannst der Funktion dabei 3 Parameter übergeben.
    Achtung! Das erste Zeichen eines Strings entspricht 0!

    • string – Der String den du bearbeiten möchtest
    • startpunkt – Ab welcher Stelle soll der neue String geteilt werden?
      • = 0, Start des neuen Strings ab dem ersten Zeichen des übergebenen Strings
      • > 0, Start des neuen Strings ab einem bestimmten Punkt, beginnend von vorne
      • < 0, Start des neuen Strings ab einem bestimmten Punkt, beginnend von hinten
    • laenge – Wie lang soll der neue String sein?
      • Standard: Bis zum Ende des übergebenen Strings
      • > 0, Zurückgegeben wird die Länge, beginnend vom startpunkt
      • < 0, Zurückgegeben wird die Länge, beginnend vom letzten Zeichen des bereits bestehenden Strings

    Du erhältst durch die Funktion einen neuen (deinen Bedingungen angepassten) String als Rückgabewert.

    Kurzübersicht

    Am besten lässt sich die Funktion an ein paar Beispielen darstellen.
    Wir haben dabei die gängigsten Varianten für dich vorbereitet.

    PHP substr Funktion mit 2 Parametern

    Du kannst die PHP-Funktion auch mit 2 Parametern ausführen.
    Dabei gibt der zweite Parameter den Startpunkt des neuen Strings an.

    // Nutzung von zwei Parametern
    substr('Das Wetter ist wunderbar', 4);

    Ausgabe:

    'Wetter ist wunderbar'

    PHP substr Funktion mit 3 Parametern

    Die Funktion mit 3 Parametern auszuführen ist dabei die üblichste Variante.
    Diese eignet sich vor allem gut, wenn du nur den Anfang oder das Ende eines Strings haben möchtest.

    // Nutzung eines negativen Startpunkts
    substr('Das Wetter ist wunderbar', 4, 6);

    Ausgabe:

    'Wetter'

    PHP substr mit negativem Startpunkt und Länge

    Mit negativem Startpunkt:

    // Nutzung von negativem Startpunkt
    substr('Das Wetter ist wunderbar', -9);

    Ausgabe:

    'wunderbar'

    Mit negativer Länge:

    // Nutzung von negativem Startpunkt
    substr('Das Wetter ist wunderbar', 4, -9);

    Ausgabe:

    'ist wunderbar'

    Praxisbeispiel: Zuordnung der Ländercodes von Handynummern

    Stell dir folgendes vor:
    Wir arbeiten in einem international tätigen Unternehmen und wollen bei der Kundenregistrierung dem Kunden die Arbeit erleichtern.
    Deshalb wollen wir dem Kunden direkt nach der Eingabe der Handynummer sein dementsprechendes Land zuordnen.
    Beispiel einer Handynummer:

    $telefonnummer = '+49121212121000';

    Um einer Handynummer ein Land zuordnen zu können, brauchen wir die Vorwahl.
    Also müssen wir mit der PHP substr Funktion uns nun die ersten 3 Zeichen ausgeben lassen.
    Natürlich gibt es auch Länder mit weniger oder mehr Zeichen in der Vorwahl, aber um die Aufgabe simpel zu halten, gehen wir nun von 3 fixen Zeichen aus.
    Das würde dann so aussehen:

    $telefonnummer = '+49121212121000';
    $vorwahl = substr($telefonnummer,0,3); // $vorwahl = +49

    In diesem Beispiel würden wir mit der substr Funktion +49 zurückgeliefert bekommen.
    Jetzt können wir mit Hilfe der Vorwahl prüfen zu welchem Land die Vorwahl gehört.

    $telefonnummer = '+49121212121000';
    $vorwahl = substr($telefonnummer,0,3);
    
    if($vorwahl == '+49'){
    	echo 'Deutschland';
    } else{
    	echo 'Anderes Land';
    }

    Da unsere Vorwahl +49 ist, gibt die Prüfung per if-Bedingung auch Deutschland zurück.
    Würde unsere Nummer beispielsweise mit +38 beginnen, würden wir ‚Anderes Land‘ als Antwort bekommen.

    Fazit

    Die PHP substr() Funktion hilft uns Teile eines bereits bestehenden Strings auszulesen.
    Dabei können wir den Startpunkt und die Länge der Teile individuell festlegen.
    Dies eignet sich perfekt um bestimmte Stücke einer Nutzereingabe auf etwas zu prüfen.

    😩 Gelangweilt von den Udemy & YouTube-Tutorials?!

    Lerne spielerisch Python, Java & SQL und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.

    TP Star TP Star TP Star TP Star TP Star

    "Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."

    - Lennart Sparbier

    100% kostenlos registrieren · keine Kreditkarte notwendig

    👋 Wir warten bereits auf dich!

    Lerne das, was du wirklich brauchst.

    Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.

    Logo von Python
    Logo von PyTorch
    Logo von Pandas
    Logo von Matplotlib
    Logo von Java
    Logo von NumPy
    Mehr erfahren

    100% kostenlos registrieren · keine Zahlungsdaten notwendig