Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Stringfunktionen
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

URL- und HTML-spezifische Zeichenkettenfunktionen




Die Funktionen dieser Gruppe werden benötigt, wenn mithilfe der HTTP-Methode GET Daten mit entsprechenden Sonderzeichen im Query-String via URL übertragen werden sollen.

Ein weiterer Anwendungsbereich dieser Funktion ist, wenn Zeichen, die in HTML eine besondere Bedeutung haben, z.B. < und >, auf einer HTML-Seite dargestellt werden sollen, ohne dass der Browser diese Zeichen als HTML-Sonderzeichen interpretiert.


Funktion Beispiel Beschreibung
get_meta_tags($file) $array = get_meta_tags("inhalt.htm") Extrahiert -Tags und gibt diese in einem Array zurück.
htmlentities($str) $str1 = htmlentities($str) Konvertiert HTML- und Sonderzeichen. Um die Interpretation zu verhindern.
htmlspecialchars($str) $str1 = htmlentities($str) Konvertiert HTML-Zeichen, wie & " ' < >. Um die Interpretation zu verhindern.
nl2br($str) echo nl2br($str1) Wandelt Zeilenumbrüche in
-Tags um.
parse_str($str) parse_str($str1) Zerlegt den Query_String in seine Variablen.
parse_url($url) $array = parse_url($url) Zerlegt die URL in ihre einzelnen Bestandteile. Als Rückgabewert dieser Funktion erhalten Sie ein assoziatives Array mit den einzelnen Bestandteilen der URL.
rawurldecode($str) echo rawurldecode($str1) Wandelt Zeichenketten, die durch rawurlencode() kodiert wurden, in eine normale Zeichenkette um.
rawurlencode($str) echo rawurlencode($str1) Konvertiert die Umlaute und Sonderzeichen einer Zeichenkette in Prozentzeichen und dem zweistelligen, hexadezimal ASCII-Wert zur Verwendung in einer URL.
strip_tags($str[,allow_tags) echo strip_tags($str1) Entfernt HTML- und PHP-Tags. Mit Hilfe des optionalen Parameters allow_tags können bestimmte HTML- und PHP-Tags als zulässig festgelegt werden.
urldecode($str) echo urldecode($str1) Wandelt eine Zeichenkette um, welche über eine URL übermittelt oder mit der Funktion urlencode() kodiert wurde.
urlencode($str) echo urlencode($str1) Konvertiert die Umlaute und Sonderzeichen einer Zeichenkette in Prozentzeichen und dem zweistelligen, hexadezimal ASCII-Wert zur Verwendung in einer URL.
wordwrap($str,$pos,$sep) $str = wordwrap($text, $length,$sep); Bricht die Zeilen des Strings $str an der mittels $pos angegebenen Position um. Diese Zeilenumbrüche werden mit dem im (optionalen) Parameter $sep spezifizierten Steuerzeichen durchgeführt.



Einsatz von htmlspecialchars()

Ein dieser Funktion übergebener String wird von der Funktion so umgewandelt, dass HTML-spezifische Sonderzeichen vom Browser nicht mehr als solche behandelt, sondern als normale Zeichen ausgegeben werden.

Das folgende Beispiel demonstriert dieses Verhalten. Wenn Sie den String des folgenden Skripts mit echo() im Browser ausgeben wollen, werden Sie zunächst gar nichts sehen. Dies liegt daran, dass der Browser die Zeichen < und > als HTML-Sonderzeichen zur Kennzeichnung von HTML-Tags interpretiert, wodurch der Inhalt des Strings zur Definition eines HTML-Grundgerüsts ohne weiteren Inhalt wird, was im Browser zu keiner Anzeige führt.

Soll der String dennoch angezeigt werden, muss dieser vor der Ausgabe so umgewandelt werden, dass die Sonderzeichen ihre HTML-spezifische Bedeutung verlieren. Diese Aufgabe erledigt htmlspecialchars().


Beispiel



<?php
$html 
'<html>
<head>
<title>HTML</title>
<meta name="author" content="Caroline K">
</head><body bgcolor="#FFFFFF" text="#000000">Test</body>
</html>'
;
echo 
$html;
?>



Der vorstehende echo()-Befehl erzeugt erwartungsgemäss keine Ausgabe. Wird $html vor der Ausgabe im Browser mit htmlspecialchars() konvertiert, verlieren die Sonderzeichen < und > ihre HTML-spezifische Bedeutung, so dass die Zeichenfolge nun tatsächlich angezeigt wird.



echo htmlspecialchars($html);




Ausgabe



<html> <head> <title>HTML</title> <meta name="author" content="Caroline K"> </head><body bgcolor="#FFFFFF" text="#000000">Test</body> </html>




Einsatz von htmlentities()

Die Funktion htmlentities() kann für die gleiche Aufgabe verwendet werden. Der Unterschied zwischen htmlspecialchars() und htmlentities() besteht darin, dass htmlentities() zusätzlich zu den von htmlspecialchars() umgewandelten Zeichen < > & " ' auch Umlaute und andere Sonderzeichen konvertiert.


Beispiel



<?php
$html 
"Übung";
// Ausgabe (Quelltext) - &Uuml;bung
echo htmlentities($html);
?>




Einsatz von rawurlencode()

Die Funktion konvertiert die Umlaute und Sonderzeichen einer Zeichenkette in Prozentzeichen gefolgt von dem zugehörigen zweistelligen, hexadezimal ASCII-Wert, um zu ermöglichen, dass der String in einer URL verwendet werden kann.

Zum Beispiel wird auf diese Weise das im String des folgenden Skripts enthaltene Sonderzeichen &, das in einem URL eine Sonderbedeutung hat, in das Zeichen %26 umgewandelt, wodurch es diese spezielle Bedeutung verliert. Die in einem URL nicht zulässigen Leerzeichen werden auf diese Weise in %20 umgewandelt.


Beispiel



<?php
$teilurl 
"wert ein&wert zwei";
echo 
rawurlencode($teilurl);
?>




Ausgabe



wert%20ein%26wert%20zwei




Einsatz von rawurldecode()

Mit Hilfe der Funktion rawurldecode() kann die Konvertierung von rawurlencode() wieder rückgängig gemacht werden.


Beispiel



<?php
$teilurl 
"wert%20ein%26wert%20zwei";
echo 
rawurldecode($teilurl);
?>




Ausgabe



wert ein&wert zwei




Einsatz von nl2br()

Sie ersetzt sämtliche Zeilenumbrüche in der Zeichenkette durch einen HTML-Zeilenumbruch
.

Diese Funktion wird z.B. verwendet, wenn Daten, die aus Multi-Line-Feldern von Datenbanken stammen, HTML-gerecht aufbereitet werden sollen.


Beispiel



<?php
$datenbankinhalt 
"Hier ein
Umbruch aus
einer Datenbank"
;
echo 
nl2br($datenbankinhalt);
?>




Ausgabe



Hier ein
Umbruch aus
einer Datenbank




Ausgabe - Quelltext



Hier ein<br />
Umbruch aus<br />
einer Datenbank




Einsatz von parse_url()

Die Funktion zerlegt die URL in ihre einzelnen Bestandteile. Als Rückgabewert dieser Funktion erhalten Sie ein assoziatives Array mit den einzelnen Bestandteilen der URL. Diese Bestandteile bestehen aus:
. scheme - Protokoll der Anfrage (z.B. http, ftp, etc.)
. host - Name (z.B. www.atomicscript.de)
. port - Protnummer (z.B. 8000)
. user - Username (für Logins)
. pass - Userpasswort (für Logins)
. path - Pfad zu Datei (z.B. /info.php)
. query - Anfrage an eine Datei (z.B. signal=ein)
. fragment - Sprungziel (Anker) innerhalb der Datei (z.B. unten)


Beispiel



<?php
$urltotal 
"matze:123@www.atomicscript.de:8000/info.php?signal=eins#unten";

$urlarray parse_url($urltotal);

foreach (
$urlarray as $key=>$element) {
 echo 
"$key => $element<br>";
}
?>




Ausgabe



scheme => http
host => www.atomicscript.de
port => 8000
user => matze
pass => 123
path => /info.php
query => signal=eins
fragment => unten




 


Ausgabe von Zeichen und Zeichenketten
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de