Johannes Zeller: Problem Mit PHP

Beitrag lesen

Hallo Manuel,

Welchen Firefox hast du denn? Seit 1.0 bis zur aktuellen Version wird der Code angezeigt, wenn er nicht geparst wird (alternativ kann es auch zur Downloadaufforderung kommen) Aber ignoriert mit Sicherheit nicht.

Wenn der Browser beim Parsen eines HTML-Dokuments auf die Zeichenfolge <? trifft, interpretiert er dies als den Start einer SGML Verarbeitungsanweisung. Da der Browser mit dem Inhalt dieser Anweisung normalerweise nichts anzufangen weiß, ignoriert er sie. Zu interessanten Ergebnissen führt das, wenn innerhalb des PHP-Abschnittes das Zeichen > vorkommt. Da eine SGML-Verarbeitungsanweisung nämlich durch > beendet wird, wird der Rest der PHP-Anweisung wie normales HTML-interpretiert.

Anders sieht es bei XHTML aus (sofern es auch als solches ausgeliefert wird). In XML gibt es nämlich auch Verarbeitungsanweisungen, nur haben diese die Form <?...?>, somit wird der komplette PHP-Code vom Parser ignoriert.

Ich hab mal ein Beispiel dazu gemacht:

HTML
XHTML (als text/html)
XHTML (als application/xhtml+xml)

Schöne Grüße,

Johannes