/blog/perl


substr() in Perl
[155539 mal gelesen]
foreach in Perl
[129529 mal gelesen]
Arrays in Perl - Besonderheiten
[126079 mal gelesen]
split() in Perl - Zeichenketten teilen
[114460 mal gelesen]
open() - Dateien öffnen in Perl
[109409 mal gelesen]
grep - Listen durchsuchen in Perl
[95320 mal gelesen]
chomp() in Perl
[93967 mal gelesen]
push in Perl
[91178 mal gelesen]
sleep in Perl - Das aktuelle Script warten lassen
[76359 mal gelesen]
index() in Perl - Zeichenkette in Zeichenkette suchen
[60327 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 10455 mal gelesen.

Kommentar schreiben  Druckansicht  Seitenanfang 
Beurteilen 






 Zufällige Beiträge im /blog/perl

each() in Perl - Wertepaare aus Hash auslesen

Parameter-Übergabe an ein Perl-Script mit CGI

Zeitkontrolle eines Scriptes - times() in Perl

open() - Dateien öffnen in Perl

Reguläre Ausdrücke - Klammerung und gespeicherte Werte

SSD-Festplatte - Wassn das???

binmode() - Dateien binär behandeln in Perl

Auch von mir ein frohes neues Jahr 2008

Wie schreib ich`s in Perl - Oder: Guter und schlechter Programmierstil



0.0355780124664307 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
2.8.2025

Es ist
5:55:39 Uhr

Ihre IP:
216.73.216.192

Blog-Einträge: 186

Die letzten 24 Stunden im Überblick


Gelesene Beiträge insgesamt:
4462379


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