Beruflich Dokumente
Kultur Dokumente
mit Stringmanipulationen w erden Zeichenfolgen ausgew ertet und verndert. Funktion chop chr eval explode implode ltrim ord print printf strcasecmp strchr strcmp strlen strpos strstr strtolow er strtoupper substr strtok trim Bedeutung Entfernt folgende Leerzeichen Liefert das zu einem bestimmten ASCII Wert gehrende Zeichen Wertet einen als String bergebenen Ausdruck aus. Zerlegt eine Zeichenfolge in einzelne Teile, w obei sich die Aufteilung an bestimmten Zeichen orientiert, z.B. dem Leerzeichen. Die einzelnen Strings w erden in einem Array abgelegt Setzt die Werte eines Arrays, separiert durch ein Trennzeichen, zu einem String zusammen. Entfernt fhrende Leerzeichen Ermittelt den ASCII-Wert eines Zeichens. Gibt Werte aus. Gibt formatierte Werte aus Vergleicht zw ei Strings ohne Bercksichtigung von Gro- und Kleinschreibung. Suche in einem String nach einem Zeichen. Vergleicht zw ei Strings. Ermittelt die Lnge eines Strings Ermittelt die Position eines Strings in einem anderen String. Sucht in einem anderen String nach einem String Verw andelt die Buchstaben eines Strings in Kleinbuchstaben Verw andelt die Buchstaben eines Strings in Grobuchstaben Liefert einen Teilstring aus einem String Zerlegt einen String in einzelne Teile, w obei ein Trennzeichen, etw a das Leerzeichen, bestimmt, w o getrennt w erden soll. Die Funktion liefert bei jedem erneuten Aufruf den jew eils nchsten Teilstring. Entfernt fhrende und folgende Leerzeichen.
ereg_replace Sucht nach einem Teilstring innerhalb eines Strings und ersetzt diesen durch einen anderen String. w ordw rap Fhrt nach einer bestimmenden Zeichenzahl einen Zeilenumbruch durch. W ie schon am Anfang erw hnt w erden $Variablen in Strings durch den Wert der Variablen ersetzt. W ill man das verhindern kann man den String in einfache Anfhrungzeichen setzen. Eine andere Mglichkeit ist der Einsatz des EscapeZeichens, dem Backslash. Dadurch w ird das Dollarzeichen nicht als Kennung der Variablen interpretiert. Hallo Herr Maier <?php $Name = Maier; echo "Hallo Herr $Name"; ?> <?php $Name = Maier; echo 'Hallo Herr $Name'; ?> <?php $Name = Maier; echo "Hallo Herr \$Name"; ?>
Stringvergleich
ein Stringverleich vergleicht eine gesamte Zeichenfolge oder Teile daraus.
strcasecmp()
Um Gro und Kleinschreibung nicht zu beachten, verw endet man strcasecmp. Hier w ird bei bereinstimmung der Wert 0 zurckgegeben. <?php echo strcasecmp("grne Vase", "Grne Vase"),"<br>"; echo strcasecmp("Grne Vase", "grne vase"),"<br>"; echo strcasecmp("Grne Vase", "Grne Vase"); ?>
0 0 0
The file was converted using http://www.convertapi.com Please purchase credits to remove this text http://www.convertapi.com/prices
das stimmt
<?php $Teststring = strcasecmp("grne Vase", "Grne Vase"); if($Teststring==0){ echo "das stimmt"; } else{ echo "das stimmt nicht"; } ?>
21
5 5 25 7
Ausgabe eines Teilstrings substr() mittels substr() lassen sich Teile einer Zeichenkette ausgeben. Es w erden 3 Argumente erw artet,
1. die Zeichenkette, 2. die Startposition beginnend bei 0, fr den ersten Buchstaben 3. die Anzahl der auszugebenden Zeichen. <?php $text="Mein Hirt ist Gott der Herr, er w ird mich immer w eiden. Er w altet nah und fern."; echo substr($text,23,4); ?>
Herr
Im folgenden Beispiel w ird nach der Dateiendung in einer Pfadangabe gesucht. Dabei w ird zuerst die Position des Punktes ermittelt. Anschlieend die Gesamtlnge der Zeichenfolge mittels strlen(). Zum Schlu w ird damit die gew nschte Formel gebildet. <?php $Pfad="D:\documente\vertraulich\amigo.php"; $Pos = strpos($Pfad, "."); $Len = strlen($Pfad); echo substr($Pfad, $Pos, $Len-$Pos); ?>
.php
Mit trim() kann man derartige Fehleinschtzungen verhindern, da fhrende und folgende Leerzeichen entfernt w erden. Das lt sich natrlich auch gut in Formularfeldern einsetzen. Fhrende Leerzeichen kann man mit ltrim und nachfolgende mit chop entfernen. <?php $Firma = "Monster AG "; if(trim($Firma) =="Monster AG"){ echo "das stimmt"; das stimmt } else{ echo "n, die Firma heit anders"; } ?>
The file was converted using http://www.convertapi.com Please purchase credits to remove this text http://www.convertapi.com/prices
monster ag MONSTER AG
das stimmt
Hallo, Welt
Hier bietet sich natrlich eine Schleife an. Als Bedingung w ird hier die Variable $Teil angegeben, der mittels strtok() Einzelteile von $Datum zugew iesen w erden. Wenn keine w eiteren Teile vorhanden sind, w ird der Wert false zurckgeliefert und die Schleife beendet. <?php $Datum = "23.04.2002"; $Teil=strtok($Datum,"."); 23 w hile($Teil){ 04 echo $Teil,"<br>"; 2002 $Teil = strtok("."); } ?>
30 02 1879
implode()
Das Gegenstck implode() w ird dazu verw endet, die Elemente eines Arrays zu einem Textstring zusammenzufgen. Als erstes Argument w ird ein "Trennzeichen" (hier der br Tag) und als zw eites Argument der Arrayname angegeben. W ie man sieht ist hier keine Schleife erforderlich. Sonntag Montag Dienstag Mittw och Donnerstag Freitag Samstag
Mw St: 160Euro
Mw St:160Euro
Mw St:160Euro
erzeugen. Der Unterschied ist folgender mit printf w ird die Ausgabe direkt an den Brow ser bergeben mit sprintf w ird eine Zeichenfolge erzeugt, die man einer Variablen bergeben kann, oder mittels echo ausgeben kann. <?php printf("EUR %010.4f", 1234.56789); ?>
EUR 01234.5679
<?php echo sprintf("EUR %010.4f", 1234.56789); ?> Das erste Argument ist die Formatzuw eisung, das zw eite Argument enthlt den zu formatierenden Wert. Die Formatierung w ird mit dem Prozentzeichen eingeleitet, der Text davor w ird unverndert ausgegeben. EUR 01234.5679 Beispiel EUR 01234.5679 EUR 1234.5679 EUR *1234.5679 EUR 1234.56790 Funktion Format <?php printf("EUR %010.4f", 1234.56789); ?> <?php printf("EUR %10.4f", 1234.56789); ?> <?php printf("EUR %'*10.4f", 1234.56789); ?> <?php printf("EUR %0-10.4f", 1234.56789); ?> Erklrung Das erste Zeichen definiert ein Fllzeichen hier die Null.
Wenn man darauf verzichtet, w ird stattdessen ein Leerzeichen genommen. Anderen Fllzeichen als der Null muss ein einfaches Anfhrungszeichen vorangestellt sein. Als zw eites Zeichen kann ein Minus Zeichen eingesetzt w erden, w as zur Folge hat, dass der Wert linksbndig ausgerichtet w ird und die Fllzeichen rechts vom Wert erscheinen. Als nchstes w ird die Anzahl der Vorkommastellen angegeben, gefolgt von einem Punkt und der Anzahl der Dezimalstellen. Fehlende Zeichen w erden mit dem Fllzeichen aufgefllt. Ich habe festgestellt, dass bei der Eingabe kleinerer anzuzeigender Werte, als in der Zahl vorhanden sind, merkw rdige Ungereimtheiten in den Nachkommastellen angezeigt w erden. Zum Schluss gibt man an, w ie der Wert zu behandeln ist, mglich sind:
EUR 1234.5679
-----------Dortmund
<?php 0000010100 printf("%010b", 20); ?> caca0 <?php printf("%x", 830624); ?>
x Hexadezimalzahl
Suchen und Ersetzen in einem String ereg_replace() ereg_replace(Suche,Ersetze,betroffene Variable) Hier w erden 3 Parameter erw artet, der String der ersetzt w erden soll, der String, w elcher den gefundenen String ersetzt und der gesamte String, in dem die Funktion ausgefhrt w ird. Hier w erden alle Strings, die dem ersten Parameter entsprechen, ersetzt durch den zw eiten Parameter. <?php Alle meine Entchen schw immen auf dem See. $einLied = "Alle meine Entchen schw immen auf dem Tmpel."; echo $einLied = ereg_replace("Tmpel", "See", $einLied); ?>
Praxisbeispiel bersicht w eiter Webdesign / PHP / mySQL / Dreamw eaver MX Tipps Copyright Michael Albers
www.pastorpixel.de
The file was converted using http://www.convertapi.com Please purchase credits to remove this text http://www.convertapi.com/prices