/blog/perl


substr() in Perl
[154287 mal gelesen]
foreach in Perl
[129187 mal gelesen]
Arrays in Perl - Besonderheiten
[125445 mal gelesen]
split() in Perl - Zeichenketten teilen
[113659 mal gelesen]
open() - Dateien öffnen in Perl
[109015 mal gelesen]
grep - Listen durchsuchen in Perl
[94773 mal gelesen]
chomp() in Perl
[93659 mal gelesen]
push in Perl
[90875 mal gelesen]
sleep in Perl - Das aktuelle Script warten lassen
[76007 mal gelesen]
index() in Perl - Zeichenkette in Zeichenkette suchen
[59612 mal gelesen]


Arrays
Dateien
HTPC
Hashes
Leistungsoptimiert
PHP
Perl
RegEx
Schleifen
Script
Skalare
Sonstiges
System
Webserver
Zur Startseite


Donnerstag, 1.3.2007, 11:37:51 Uhr

HTML-Code ausgeben mit Perl


Wer viel für Webseiten programmiert, muß natürlich Text auf die Seiten bringen. Wie immer (wer hätte das gedacht...) gibts dafür in Perl mehrere Wege.

Beispiel 1: Mit print

print "<a href=\"link.htm\" target=\"_blank\">Link</a>";


Yo, also das funktioniert schon, ABER: Wie Sie vielleicht sehen, bricht man sich beim Schreiben solcher Ausgaben die Finger mit den \", geschweige denn, daß es Fehlermeldungen hagelt, wenn man mal ein \ vor dem " vergißt.
Ist also eher für kleine Sachen geeignet...

Beispiel 2: Mit und Here-Documents

print <<ENDE;
Hallo $user,
Das ist ein Testtext<br>
<a href="test.htm" target="_blank">Link <img src="test.gif" border="0"></a><br>
Ende des Tests
ENDE


Supeschöne Sache, find ich, weil HTML-Code schön sauber und übersichtlich in einem Block steht und nicht mehr Escaped werden muß. Zu beachten ist außerdem, daß die Variable $user ersetzt wird durch den Wert, den sie beinhalted.
Für lange Blöcke das Mittel meiner Wahl!

Übrigens
Ein

print <<'Ende';
print $user
Ende


wandelt die Variable $user nicht um, natürlich auch alle anderen Variablen nicht, die auftauchen würden.

Beispiel 3: Mit print qq
Das letzt Beispiel war ja schon sehr gut, allerdings vielleicht etwas "klobig" für kleinere Ausgabe.
Für kurze Sachen kann man jedoch bequem ein

print qq~<a href="test.htm">Link</a>~;


anwenden. Wie Sie sehen, wird der Text zwischen den beiden ~-Zeichen so ausgegeben, wie er ist. Man muß nur aufpassen, daß in dem Text, der ausgegeben werden soll, kein weiteres ~-Zeichen auftaucht. Falls doch, so hat Perl natürlich wieder die Rettung:
qq funktioniert auch mit qq(), qq,, qq[], qq##, usw. Näheres findet man in der Beschreibung perlop.pod

Und Übrigens:
Text ausgeben mit Perl ist auf diese Weise ja ganz easy, aber bedenken Sie, daß Umlaute kodiert werden sollten! Ein

print "Die Nähmaschine ist zum Nähen da.";


kann schnell zum unleserlichen Zeichensalat werden, da manche Browser die Umlaute nicht von sich aus übersetzen.



Thema: Perl Skalare

Der Beitrag "HTML-Code ausgeben mit Perl" wurde 10346 mal gelesen.

Kommentar schreiben  Druckansicht  Seitenanfang 
Beurteilen 






 Zufällige Beiträge im /blog/perl

Dateien öffnen mit Fehlerabfrage

uc() in Perl - Alle Buchstaben in Großbuchstaben umwandeln

crypt() in Perl - Zeichenketten verschlüsseln

Sonderzeichen konvertieren für Tag-Cloud

until in Perl

Die Transliteration - Nur ein Zeichen in einem Skalar ersetzen

getc - Nächstes Zeichen aus Datei lesen

Nochmal Dateien suchen - diesmal auch in Unterverzeichnissen

redo - Schleife erneut durchlaufen

Letzte Befehle wiederholen unter Windows Vista - doskey



0.0269460678100586 sec. to build



...Blogsoftware in pure Perl - Powered by a lot of Coffee...


SSD-Festplatte - Wassn das???
Die Transliteration - Nur ein Zeichen in einem Skalar ersetzen
Select - Case in Perl
Windows 7 XP Mode – Wo finde ich den XP-Modus unter Windows 7?
Mac-Adresse beim Apple Macintosh herausfinden
SGN-Funktion für Perl

Eigene IP herausfinden mit Perl
Epoche live in Datum umwandeln
Firefox 3 - Exe-Files downloaden


Gesamtverzeichnis
Februar 2010
Dezember 2009
Oktober 2009
Januar 2009
Dezember 2008
November 2008
September 2008
August 2008
Juli 2008
Juni 2008
Mai 2008
April 2008
Januar 2008
Dezember 2007
November 2007
Oktober 2007
September 2007
August 2007
Juni 2007
Mai 2007
April 2007
März 2007
Februar 2007
Januar 2007
Dezember 2006


Mister Wong

RSS-Feed

Heute ist der
12.12.2024

Es ist
16:09:17 Uhr

Ihre IP:
18.97.9.172

Blog-Einträge: 186

Die letzten 24 Stunden im Überblick


Gelesene Beiträge insgesamt:
4426897


Webseiten vergleichen
Kalender mit Feiertagen - 2028
Links finden und testen
Menschliche Datumsangaben
IP zu Domain herausfinden
Time live in Datum umwandeln
Perl für Windows



Impressum