Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

PHP 5.4 & MySQL 5.6 Grundkurs

HTML-Sonderzeichen behandeln

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Manche Zeichen haben in HTML eine besondere Bedeutung. Mit den richtigen Funktionen können Sie PHP anweisen, sich um diese Sonderzeichen zu kümmern. Wie's geht? Mit "htmlspecialchars()" und "strip_tags()".

Transkript

Manche Zeichen haben eine besondere Bedeutung in HTML. Beispielsweise die spitzen Klammern, die dazu dienen Tags zu kennzeichnen, sowohl die Start, als auch die Endtags. Mit den richtigen Funktionen können Sie PHP anweisen, sich um diese Zeichen zu kümmern. Das erste was Sie hierfür brauchen ist "htmlspecialchars", was ich hier in diesem Beispiel einsetze. Sie sehen ich habe hier einen String definiert, der ein bisschen komisch ausschaut, denn er zeigt Sonderzeichen, das heißt Zeichen, die in HTML eine besondere Bedeutung haben. Hier steht "2 < 4" und " 5 == 5". Hier sind außerdem noch Anführungszeichen. Das kleiner Zeichen ist ein besonderes Zeichen in HTML. Das Ampersand Zeichen ist selbst auch ein besonderes Zeichen, weil es dazu dient Entities anzugeben, und diese Zeichen kann ich jetzt über "htmlspecialchars" von PHP behandeln lassen. Schauen wir uns mal die Ausgabe an. Ich habe die hier schon aufgerufen. In der normalen HTML Ansicht sehen Sie nichts, hier müssen Sie wirklich in den Quellcode gehen. Dann sehen Sie hier die erste Zeile. Da ist aus dem "<" ein "&lt;" geworden. also die Entity Kodierung, so wie es in HTML üblich ist. Ebenso für das kaufmännische und, das ist geworden zu "amp;". Ebenfalls umgewandelt ist hier das doppelte Anführungszeichen, was in das Entity "quot" verwandelt wurde. Jetzt gibt es einen weiteren Parameter, den Sie bei "htmlspecialchars" angeben können. Hier steht einmal "ENT_QUOTES". Das bewirkt jetzt, dass zusätzlich zu dem doppelten Anführungszeichen, was "htmlspecialchars" automatisch umwandelt, auch das einfache Anführungszeichen in ein Entity umgewandelt wird. Hier sehen Sie die Ausgabe. Sie sehen, dass ist der Unterschied im ersten Fall, wo ich nichts angegeben habe, da ist es so erhalten geblieben. Im zweiten Fall hingegen gibt es diese Entity Kodierung. Sie könnten übrigens bei "htmlspecialchars" auch "ENT_NOQUOTES" angeben, dann das sehen Sie hier im Beispiel werden die Anführungszeichen überhaupt nicht verändert. Übrigens können Sie das, was "htmlspecialchars" macht, auch wieder rückgängig machen. Das sehen Sie hier in diesem Beispiel, und da bewirkt dieses "htmlspecialchars_decode", dass die Kodierung wieder rückgeführt wird. Sie sehen hier steht dann wirklich "<" und "&&", aber normalerweise würden Sie natürlich das hier nicht auf einer Webseite ausgeben lassen, aber es könnte sein, dass man es in eine Datenbank schreiben möchte. Dann ist dieses "htmlspecialchars_decode" praktisch. Das dieses Zeichen hier an dieser Stelle nicht korrekt ist, darauf weisst uns hier übrigens auch Firefox direkt hin. Also das sollte man normalerweise nicht direkt ausgeben, sondern eben mit "htmlspecialchars" behandeln. Eine weitere Möglichkeit, die PHP für diese Sonderzeichen bietet, ist "strip_tags". Das macht das, was der Name schon vermuten lässt. Es entfernt bestimmte Tags. Schauen wir uns hier ein Beispiel an. Hier sehen Sie ein String mit HTML Tags. Ich habe ja hier einen Absatz. Ich habe hier eine Betonung über <em und eine weitere Betonung über <strong. Schauen wir uns mal das Ergebnis hier an. Ich rufe mal das Beispiel auf, und gehe wieder in den Quellcode, weil der hier dann wesentlich deutlicher ist. Zusätzlich habe ich hier auch den PHP Code geöffnet. Also hier den String lasse ich zuerst einmal ganz normal ausgeben. Sie sehen es hier, da kommen die Absätze mit den ganzen HTML Tags. Dann verwende ich hier einmal "strip_tags". Und Sie sehen die HTML Elemente <p, <em und <strong sind entfernt, wir haben nur noch den Text pur. Das ist das normale Verhalten von diesem "strip_tags". Sie können jetzt dem "strip_tags" auch noch einen zweiten Parameter übergeben, und sagen, bitte entferne alle Tags, aber lasse hier im Beispiel <p und <em bitte unberücksichtigt, und das sehen Sie hier unten, da ist dann <strong entfernt, aber <p und <em sind dageblieben. "htmlspecialchars" und "strip_tags" sind wichtige Funktionen, um mit den Sonderzeichen von HTML umzugehen. "htmlspecialchars" verwandelt alles in Entities, und "strip_tags" entfernt Tags. Beide sind äußerst nützlich für Ihren Werkzeugkoffer.

PHP 5.4 & MySQL 5.6 Grundkurs

Steigen Sie auch ohne Vorwissen in die Programmierung PHP- & MySQL-basierter Webseiten ein und lernen Sie die Sprachgrundlagen wie Bedingungen, Schleifen, Funktionen usw. kennen.

7 Std. 9 min (86 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!