PHP & Strings

Zur Speicherung von Zeichenketten gibt es unter PHP Variablen vom Typ String. PHP Strings speichern aneinander gereihte Zeichen (characters), die gewissermaßen in einer Art Array hintereinander an den entsprechenden Speicherplätzen abgelegt sind, auf die auch Zeichenweise zugegriffen werden kann. Dabei unterstützen PHP Arrays gleichermaßen die Kodierung per ASCII-Code mit seinen 256 einzelnen Zeichen, wie auch Unicode-Strings.

PHP String definieren mit Single-Quoted-Strings

Wenn der Webentwickler ein PHP String definieren möchte, dann stehen ihm zwei Methoden zur Verfügung dies zu bewerkstelligen. Zum Einen können PHP Strings per einfachen Anführungszeichen (single-quoted) definiert werden. Die zweite Variante wird im nächsten Beispiel gezeigt.

<?php
    // Variable als PHP String definieren
    // In diesem Fall wird die Zeichenkette mit Hilfe einfacher Anführungszeichen
    // definiert. (single quote)
    $str = 'Inhalt des Strings';
    echo $str . '<br>';
    // Wenn ein einfaches Anführungszeichen innerhalb eines Strings stehen soll,
    // ist es nötig, dass dieses Zeichen maskiert (escaped) wird. Zum "Escapen"
    // von Zeichen wird ein Backslash ('\') verwendet. Anders als bei den
    // Double-Quoted-Strings ist das einfache Anführungszeichen das einzige
    // Zeichen, welches maskiert werden muss, wenn Strings in einfachen
    // Anführungszeichen definiert werden.
    $str = 'Heinrich\'s Saftladen';
    echo $str . '<br>';
    // Als zweite Besonderheit von single-quoted Strings ist zu erwähnen, dass
    // Variablen, die innerhalb von Strings stehen, nicht als solche interpretiert
    // werden. Folgende Anweisung definiert eine Zeichenkette, die nicht den
    // Inhalt der darin eingebetteten Variablen integriert, sondern nur die
    // entsprechende Zeichenkette einbettet.
    $str2 = 'str: $str';
    echo $str2 . '<br>';
    // Sollen Variableninhalte in das String eingebaut werden, so muss dies
    // bei single-quoted-Strings durch Verknüpfung mit dem entsprechenden
    // String-Operator geschehen.
    $str2 = 'str: ' . $str;
    echo $str2 . '<br>';
?>

Inhalt des Strings
Heinrich's Saftladen
str: $str
str: Heinrich's Saftladen

PHP String definieren: Doppelte Anführungszeichen (Double Quoted)

Eine weitere Art PHP Strings zu definieren ist die mit doppelten Anführungszeichen. Hier bestehen Unterschiede beim Escapen von Zeichen und Variablen können direkt in das String integriert werden. Maskiert werden können bei dieser Vorgehensweise bei der Definition von PHP Strings nicht nur Anführungszeichen, sondern auch Tabulatoren, Newlines und das Dollar-Zeichen, welches normalerweise zum Einbetten der in Variablen gespeicherten Werte genutzt wird. Anders als bei der Variante mit den einfachen Anführungszeichen wird hier nicht die Zeichenkette mit dem Namen der Variablen, sondern der Inhalt der angegebenen Variable eingebettet.

<?php
    // Eine weitere Möglichkeit ist die Definition von Strings mit doppelten
    // Anführungszeichen. Hier wird das sogenannte double quote Zeichen (")
    // verwendet. Im Prinzip unterscheidet sich folgende Definition (abgesehen
    // von der Art der verwendeten Quotes) nicht von der obigen.
    $str = "Wert in Form eines PHP-Strings";

    // Bei der Maskierung bietet die Variante mit doppelten Quotes mehr
    // Möglichkeiten. Hier können Tabulatoren (\t) und Newlines (Linefeed mit
    // '\n', was als einzelnes Zeichen gilt) verwendet werden.
    $str = "Doppeltes Quote: \"\n\tEinfaches Quote: '";
    // Auch bei der folgenden Ausgabe des Strings werden die Doppelquotes
    // maskiert. Die enthaltene Variable kann bei dieser Form von PHP Strings
    // direkt im String notiert werden. Die bei der Ausgabe angegebenen HTML-Tags
    // sollen die Formatierung verdeutlichen.
    echo "<pre><span style=\"background-color:lightgreen;\">$str</span></pre>";

    // Soll nicht der Inhalt der Variable, sondern der Variablenname ausgegeben
    // werden, so ist eine Maskierung des Dollar-Zeichens nötig.
    echo "\$str = $str";
?>

Doppeltes Quote: "
    Einfaches Quote: '


$str = Doppeltes Quote: " Einfaches Quote: '

PHP String Length: Anzahl der im String enthaltenen Zeichen ermitteln

Wenn die Anzahl der Zeichen, die in Strings enthalten sind, ermittelt werden sollen, dann kann hierzu die Funktion strlen verwendet werden – strlen steht unter PHP für STRing LENgth. Aufgabe dieser String-Funktion ist es, die Anzahl der Zeichen in einem ihr übergebenen String zu zählen und als Rückgabewert zurück zu liefern. Die Funktion strlen erwartet einen einzigen Parameter, der die Zeichenkette angibt, deren Länge ermittelt werden soll. Zurückgeliefert wird ein Integer-Wert, der die Anzahl der im String enthaltenen Zeichen angibt. Folgendes Beispiel zum Ermitteln der PHP String Length zeigt, wie eine derartige Prüfung durchgeführt wird.

<?php
    // Eine PHP String-Variable definieren, deren Länge mittels der String-Funktion
    // strlen ermittelt werden kann.
    $string = 'Zeichenkette zum Testen';
    // Die Anzahl der Zeichen, die im Teststring enthalten sind lässt sich
    // mit Hilfe der Funktion strlen ermitteln und in einer Variablen speichern...
    $length = strlen ($string);
    // und danach erfolgt die Ausgabe der Stringlänge.
    echo 'Das angegebene String enthält ' . $length . ' Zeichen<br>';

    // Maskierte Zeichen zählen jeweils als ein einziges Zeichen. Folgende
    // Zeichenkette enthält also nicht 28 sondern 27 Zeichen, da das maskierte,
    // einfache Anführungszeichen nur als ein einziges Zeichen zählt.
    $string = 'Alex\'s PHP String Beispiele';
    $length = strlen ($string);
    echo 'Wieviele Zeichen sind enthalten? ' . $length . '<br>';

    // Mit PHP String length die Anzahl der in der Zeichenkette enthaltenen
    // Zeichen ermitteln und ausgeben.
    echo strlen ('Inhalt des Strings, dessen Länge ermittelt werden soll');
?>

Das angegebene String enthält 23 Zeichen
Wieviele Zeichen sind enthalten? 27
55

Letzte Posts aus unserem Forum

Wer kennt .....

Hallo erstmal wer kennt von euch einen WEbprogrammieren,desginer der mir eine Seite erstellen kann ,Communityportal sowas in der art wie ... » mehr

von NCWebmaster am Mittwoch, 7. Oktober 2009 00:32 in PHP - bisher 1 Antwort
Letzter Beitrag: Mittwoch, 7. Oktober 2009 13:26 von kalle

Hallo auch, da gibt es sicher viele die das machen würden, allerdings deutlich weniger die es auch tatsächlich machen könnten - noch einmal weniger ... » mehr

oh Mann

Hallo erstmals..... also ich kenn mich ja nicht so aus, aber ich denke die Menschheit fliegt auf den Mond, dann müsste es auch eine Lösung für mein ... » mehr

von Dummbazz am Dienstag, 24. Februar 2009 15:11 in PHP - bisher 2 Antworten
Letzter Beitrag: Mittwoch, 25. Februar 2009 11:48 von Dummbazz

Danke für die aufmunternde Worte... ... » mehr

counter auch ohne datenbank?

tach auch, ich habe nach einem besucherzähler gesucht, der auf meiner seite anzeigt, wieviele besucher sich dort aufhalten. allerdings habe ich ... » mehr

von marcel am Montag, 8. Dezember 2008 12:21 in PHP - bisher 1 Antwort
Letzter Beitrag: Montag, 8. Dezember 2008 13:34 von alm

Hallo, sicher kann die Counter-Klasse so umgeschrieben werden, dass sie auch ohne Datenbankanbindung funktioniert. Allerdings würde das einer neuen ... » mehr

DAten speichern und abfragen

Hallo an Alle! Hoffe, dass ich hier im richtigen Forum bin. Vielleicht kann mir jemand einen Tip geben. Ich möchte auf meiner Webpage ein Formular ... » mehr

von muenchner am Samstag, 12. Juli 2008 18:31 in PHP - bisher 1 Antwort
Letzter Beitrag: Montag, 14. Juli 2008 08:49 von alm

Hallo, ich bin mir nicht sicher, wie das jetzt gemeint ist! Geht es um die Frage: Sollen die Optionen des Forumlars (die einzelnen Checkboxen) in ... » mehr

Tutorials :: PHP & MySQL - Problem

Hi, zunächsteinmal danke für das Tutorial: ... » mehr

von migges am Montag, 2. Juni 2008 12:05 in PHP - bisher 3 Antworten
Letzter Beitrag: Dienstag, 3. Juni 2008 11:45 von alm

Das mit den Oder-Operatoren wundert mich ein wenig... Welchen Fehler hat der Interpreter an diesen Stellen ausgegeben? Ich habe bislang mit ... » mehr

¬ Tutorials



¬ Insolvenzrecht