|
|
Tutorials - Erste Schritte - Strings - substrTutorials - Erste SchritteStrings: substr
Was man nun sehr sehr oft beim Pagebauen braucht, ist die Möglichkeit, Strings zu zerlegen. Dies macht die Funktion substr() - SubString. Dieser Funktion gibt man erst die Zeichenkette an, die sie behandeln soll, dann den Startpunkt, dann die Länge der Kette, die er aus der Kette extrahieren soll. Im ersten Beispiel also die ersten 10 Zeichen <?php $text = "Freude schöner Götterfunken, Tochter aus Elysium, Wir betreten Feuertrunken, Himmlische, dein Heiligtum! Deine Zauber binden wieder, Was die Mode streng geteilt. Alle Menschen werden Brüder, Wo dein sanfter Flügel weilt."; $sub = substr($text,0,10); echo $sub; ?> Was im ersten Augenblick etwas seltsam erscheint, ist dann doch ganz praktisch, sollte man sich mal damit angefreundet haben. Also... zumindest finde ichs praktisch, finde raus, ob du auch :-) Ich habe jetzt z.B. eine Schleife, die mit jeweils die nächsten 5 Buchstaben aus dem Götterfunken rausnimmt: <?php $text = "Freude schöner Götterfunken, Tochter aus Elysium, Wir betreten Feuertrunken, Himmlische, dein Heiligtum! Deine Zauber binden wieder, Was die Mode streng geteilt. Alle Menschen werden Brüder, Wo dein sanfter Flügel weilt."; $x = 0; while($x < strlen($text)) /* solange $x kleiner als die Länge von $text... */ { echo substr($text, $x, 5) . "<br />\n"; /* substr ab der Stelle $x, 5 Buchstaben lang. */ $x = $x + 5; } ?> <?php $text = "Freude schöner Götterfunken, Tochter aus Elysium, Wir betreten Feuertrunken, Himmlische, dein Heiligtum! Deine Zauber binden wieder, Was die Mode streng geteilt. Alle Menschen werden Brüder, Wo dein sanfter Flügel weilt."; $sub = substr($text,-6,6); echo "Die letzten 6 Zeichen: " . $sub; ?> dann sagt er nicht mehr die Länge an, die genommen werden soll, sondern bis wohin vor dem Ende der String genommen werden soll. So nimmt dieses substr() die gesamte Kette, bis auf die letzten 10 Zeichen: <?php $text = "Freude schöner Götterfunken, Tochter aus Elysium, Wir betreten Feuertrunken, Himmlische, dein Heiligtum! Deine Zauber binden wieder, Was die Mode streng geteilt. Alle Menschen werden Brüder, Wo dein sanfter Flügel weilt."; $sub = substr($text,0,-10); echo $sub; ?> <?php $text = "Freude schöner Götterfunken, Tochter aus Elysium, Wir betreten Feuertrunken, Himmlische, dein Heiligtum! Deine Zauber binden wieder, Was die Mode streng geteilt. Alle Menschen werden Brüder, Wo dein sanfter Flügel weilt."; echo substr($text,25); /* einmal ab stelle 25 */ ?> <br /> <br /> <?php echo substr($text,-25); /* und einmal ab 25 Stellen vor dem Ende */ ?> |