archive-de.com » DE » E » EKIWI.DE

Total: 422

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".
  • SELFHTML: JavaScript / Sprachelemente / Objekte, Eigenschaften und Methoden
    des angelegten Objekts Farbe enthalten Dies geschieht durch ein Gleichheitszeichen hinter dem Variablennamen Dahinter folgt das Wort new und dahinter durch ein Leerzeichen getrennt der Name der Funktion mit der das gleichnamige Objekt angelegt wurde im Beispiel Farbe Als Parameter werden dieser Funktion irgendwelche brauchbaren Werte übergeben im Beispiel 33 99 und C0 typische hexadezimale Farbwerte wie sie in HTML zum Einsatz kommen Anschließend ist die Variable Hintergrund an das Farbobjekt gebunden und über sie lassen sich die Eigenschaften des Objekts setzen oder abfragen Im Beispiel steht die Anweisung document bgColor Hintergrund hex Hintergrund R Hintergrund G Hintergrund B Damit wird die Hintergrundfarbe der aktuell angezeigten Seite verändert Normalerweise könnte man document bgColor so etwas zuweisen wie C0C0EE Auch im Beispiel wird ein Farbwert dieser Art zugewiesen jedoch zusammengesetzt aus den Einzeleigenschaften des Farbobjekts das in der Instanz Hintergrund gespeichert ist Die Funktion HintergrundWechseln wird aufgerufen wenn der Anwender auf den Verweis klickt der in der HTML Datei enthalten ist Beachten Sie Bereits Opera 5 erlaubt das Definieren von eigenen Objekten Das obige Beispiel wird allerdings erst im Opera 7 korrekt ausgeführt Dies liegt daran dass Opera erst ab Version 7 die Eigenschaft document bgColor unterstützt Eigenschaften von Objekten Objekte können Eigenschaften haben Ein selbst definiertes Objekt Mensch könnte zum Beispiel die Eigenschaften Name Alter Geschlecht und Muttersprache haben Vordefinierte JavaScript Objekte haben ebenfalls Eigenschaften So hat das Objekt Math zum Beispiel eine Eigenschaft PI Math PI Auf diese Weise lässt sich mit der mathematischen Konstante PI rechnen ohne deren genauen Wert zu kennen Eigenschaften von Objekten können Sie innerhalb Ihres JavaScript Codes jederzeit auslesen und in vielen Fällen können Sie die Werte von Eigenschaften auch ändern So können Sie beispielsweise dem im Browser Fenster angezeigten Dokument einen neuen gültigen URI zuweisen Dadurch erreichen Sie dass der WWW Browser einen Sprung zu der zugewiesenen Adresse so ausführt als ob der Anwender auf einen entsprechenden Verweis klicken würde Beispiel Anzeigebeispiel So sieht s aus html head title Test title head body h1 Die Seite die Sie genau erkennt h1 script type text javascript var BrowserName navigator appName var BrowserVersion navigator appVersion document write p Ah ja Sie verwenden also den b BrowserName b und zwar in der Version b BrowserVersion b p script body html Erläuterung Im Beispiel werden innerhalb eines JavaScript Bereichs zwei Eigenschaften des vordefinierten JavaScript Objekts navigator in zwei entsprechenden Variablen namens BrowserName und BrowserVersion gespeichert Das navigator Objekt stellt Ihnen über seine Eigenschaften verschiedene Informationen über den verwendeten WWW Browser des Anwenders zur Verfügung Im obigen Beispiel werden die Eigenschaften des Browser Namens gespeichert in der Objekteigenschaft navigator appName und der Browser Version gespeichert in der Objekteigenschaft navigator appVersion ermittelt Anschließend werden die ermittelten Daten mit document write dynamisch ins Browser Fenster geschrieben Objekteigenschaften sprechen Sie an indem Sie zuerst den Namen des Objekts notieren dahinter einen Punkt und dahinter den Namen der Eigenschaft Dabei sind keine Leerzeichen erlaubt Objektmethoden Objekte können Methoden haben Das sind Funktionen die Aktionen ausführen aber im Gegensatz zu alleinstehenden Funktionen an

    Original URL path: http://html.ekiwi.de/javascript/sprache/objekte.htm (2016-04-25)
    Open archived version from archive


  • SELFHTML: JavaScript / Anwendungsbeispiele / Änderungen der Fenstergröße überwachen
    body document body offsetHeight return document body offsetHeight else return 0 function neuAufbau if Weite Fensterweite Hoehe Fensterhoehe location href location href Überwachung von Netscape initialisieren if window Weite window innerWidth window onresize neuAufbau Weite Fensterweite Hoehe Fensterhoehe script head body script type text javascript Überwachung von Internet Explorer initialisieren if window Weite document body document body offsetWidth window onresize neuAufbau Weite Fensterweite Hoehe Fensterhoehe script div id Beispiel style position absolute top 100px left 100px border solid 1px 000000 Text div script type text javascript document write Weite Weite Höhe Hoehe script body html Erläuterung Die Funktionen Fensterweite und Fensterhoehe Diese beiden Funktionen dienen dazu die Fenstergröße zu ermitteln Die Funktion Fensterweite prüft ob der Browser die Eigenschaft window innerWidth kennt das ist bei Netscape der Fall nicht aber beim Internet Explorer Ist dies der Fall so wird der Wert der in dieser Eigenschaft gespeichert ist zurückgegeben Kennt der Browser diese Eigenschaft nicht so wird geprüft ob er das Objekt document body kennt und ob dieses Objekt die Eigenschaft document body offsetWidth kennt das ist beim Internet Explorer der Fall nicht aber bei Netscape Tritt dieser Zustand ein so wird der Wert der Eigenschaft document body offsetWidth zurückgegeben Sollte der Browser auch diesen Zweig der Anweisung nicht verfolgen können wird 0 zurückgegeben Die Funktion Fensterhoehe arbeitet analog und verwendet die Eigenschaften window innerHeight bzw document body offsetHeight Überwachung für Netscape initialisieren Beim Laden der Datei existiert die Variable Weite noch nicht Da eine globale Variable immer eine Eigenschaft bzw ein Objekt des Fensterobjektes ist kann mit window Weite geprüft werden ob diese existiert Netscape kennt zudem die Eigenschaft window innerWidth Deshalb arbeitet er die entsprechende Anweisung ab Zuerst wird die Überwachung des Event Handler onresize initialisiert zum Verständnis siehe auch die allgemeine Verwendung des event Objekts onResize wird ausgelöst

    Original URL path: http://html.ekiwi.de/javascript/beispiele/fensterueberwachen.htm (2016-04-25)
    Open archived version from archive

  • SELFHTML: JavaScript / Sprachelemente / Variablen und Werte
    anfängliche Wertzuweisung nämlich den Wert Das Quadrat von Die Variablen i und x werden dagegen nicht mit einem Anfangswert versehen Beim Zuweisen eines Wertes notieren Sie hinter dem Variablennamen ein Istgleichzeichen und dahinter den Wert den Sie der Variablen zuweisen wollen Sie können mehrere Variablen auf einmal definieren so wie die beiden Variablen i und x im Beispiel Dazu trennen Sie die Variablennamen durch Kommata Das ist natürlich auch in Verbindung mit zugewiesenen Anfangswerten möglich Es gibt numerische Variablen und Variablen für Zeichen bzw Zeichenketten Im obigen Beispiel sind die Variablen SinnDesLebens i und x numerische Variablen Die Variablen Hinweis und Satzteil sind dagegen Zeichenkettenvariablen Dies ist daran erkennbar dass der ihnen zugewiesene Wert ein Text in Anführungszeichen gesetzt wird Sie könnten z B eine Variable Nummer 1 und eine Variable Zeichen 1 definieren Der Unterschied ist dass Sie mit der Variablen Nummer Rechenoperationen anstellen können mit der Variablen Zeichen nicht Dafür können Sie mit Zeichenkettenvariablen Zeichenkettenoperationen durchführen etwa das Extrahieren einer Teilzeichenkette was mit numerischen Variablen nicht möglich ist Beachten Sie Bei der Vergabe von Variablennamen gelten die Regeln für selbstvergebene Namen Variablen in JavaScript sind nicht so streng an Typen gebunden wie in vielen anderen Programmiersprachen Einfache Variablentypen wie Zahlen Zeichenketten oder Wahrheitswerte werden lediglich nach numerischen und nicht numerischen Variablen eingeteilt Kommazahlen und Ganzzahlen benötigen keine unterschiedlichen Typen Der Inhalt von numerischen Variablen kann ohne vorherige Konvertierung in Zeichenketten auf den Bildschirm oder in Meldungsfenster geschrieben werden Umgekehrt können Sie aber mit Zeichenketten z B Werten aus Formularfeldern nicht immer automatisch rechnen sondern müssen sie vorher explizit in Zahlen umwandeln Für die explizite Typumwandlung gibt es verschiedene objektunabhängige Funktionen Werte von Variablen ändern Wertänderungen von Variablen sind das A O bei der Programmierung Sie werden nur dann erfolgreich eigene Programme schreiben können wenn Sie jederzeit den Überblick

    Original URL path: http://html.ekiwi.de/javascript/sprache/variablen.htm (2016-04-25)
    Open archived version from archive

  • SELFHTML: Perl / Perl-Sprachelemente / Operatoren
    Zahl 10 Zahl durch 10 modulo dividieren Zahl 2 Zahl hoch 2 errechnen Erläuterung Mathematische Operatoren notieren Sie mit den dafür üblichen Zeichen Mit notieren Sie eine Addition mit eine Subtraktion mit eine Multiplikation mit eine Division und mit eine Potenzoperation x hoch y Eine Besonderheit stellt der Operator dar Damit wird eine so genannte Modulo Division durchgeführt Bei einer Modulo Division werden zwei Werte dividiert Das Ergebnis ist jedoch im Gegensatz zur normalen Division nur der Restwert der Division Wenn Sie z B 13 5 notieren erhalten Sie als Ergebnis 3 weil 13 geteilt durch 5 gleich 2 Rest 3 ergibt Diese 3 ist es die als Ergebnis einer Modulo Division herauskommt Sie können mehrere Operationen in Reihe notieren Dabei gilt die übliche Punkt vor Strich Regel Wenn Sie eine andere Regel erzwingen wollen müssen Sie Klammern verwenden so wie im obigen Beispiel Hundertlasser 10 2 8 Die besonderen Notationen die in den obigen Beispielen vorkommen können Sie verwenden wenn Sie Additionen oder Subtraktionen abkürzen wollen Zahl ist eine Abkürzung für Zahl Zahl 1 Zahl ist eine Abkürzung für Zahl Zahl 1 Zahl 10 ist eine Abkürzung für Zahl Zahl 10 usw bei den gleichartigen Operationen Der Operator wird auch als Inkrementationsoperator bezeichnet der Operator als Dekrementationsoperator Beachten Sie Bei den Operatoren und gibt es eine Besonderheit die auf C bzw sogar auf die Maschinensprache Assembler zurückzuführen ist Die Operatoren können sowohl vor als auch nach der Variablen notiert werden also z B sowohl Zahl als auch Zahl Werden sie davor notiert wird die Operation ausgeführt bevor der Ausdruck ausgewertet wird Fachjargon Pre In Dekrement Umgekehrt gilt wird der Operator nach der Variablen notiert wird die Operation ausgeführt nachdem der Ausdruck ausgewertet wurde Fachjargon Post In Dekrement Die Ausgabe des folgenden Codes sollte Sie also nicht überraschen my Zahl 1 print Zahl print Zahl Es wird zweimal 1 ausgegeben Beim erstenmal weil Zahl ausgegeben wird bevor Eins dazuaddiert wird Beim zweitenmal weil Eins subtrahiert wird bevor Zahl ausgegeben wird Logische Operatoren Logische Operatoren brauchen Sie um Ausdrücke zu formulieren die wahr oder falsch sein können Verwendung finden solche Ausdrücke besonders in Bedingungen für bedingte Anweisungen oder Schleifen Beispiel if a 1 b 2 wenn a 1 ist und b 2 if a 1 and b 2 wenn a 1 ist und b 2 if a 1 b 1 wenn a 1 oder b 1 ist if a 1 or b 1 wenn a 1 oder b 1 ist if a 1 b 1 wenn entweder a 1 oder b 1 ist if a 1 xor b 1 wenn entweder a 1 oder b 1 ist if a 2 nicht a 2 if not a 2 nicht a 2 Erläuterung Mit dem logischen Operator oder dem Wort dafür and verknüpfen Sie zwei oder mehrere Bedingungen durch und d h beide bzw alle Bedingungen müssen erfüllt sein damit die gesamte Bedingung erfüllt ist Mit dem logischen Operator oder dem Wort dafür or verknüpfen Sie zwei oder mehrere Bedingungen inklusiv durch oder

    Original URL path: http://html.ekiwi.de/perl/sprache/operatoren.htm (2016-04-25)
    Open archived version from archive

  • SELFHTML: Perl / Perl-Sprachelemente / Skalare (Variablen)
    Initialisierungswert Anfangswert zuweisen Es ist aber auch möglich einen Skalar ohne Wertzuweisung zu deklarieren Dann lassen Sie die Wertzuweisung einfach weg und notieren eine Anweisung die einfach aus dem Namen des Skalars und dem die Anweisung abschließenden Semikolon besteht z B my Name Wenn ein Skalar auf diese Weise deklariert wird ist sein Wert undefiniert undef Wenn Sie die w Option benutzen gibt der Perl Interpreter Ihnen eine Warnung aus sofern Sie mit einem solchen undefinierten Wert weiterarbeiten wollen Sie können Skalaren numerische Werte Zeichenketten Strings und Referenzen zuweisen Ob ein Skalar numerisch oder eine Zeichenkette ist entscheiden Sie indem Sie dem Skalar einen Wert zuweisen oder indem Sie ihn in einer Anweisung verwenden Eine Zeichenkette muss dabei in Anführungszeichen stehen Das können sowohl doppelte Anführungszeichen als auch einfache Anführungszeichen sein zum Unterschied siehe Regeln beim Notieren von Zeichenketten Im obigen Beispiel speichern die Skalare Name und Name 2 Zeichenketten während die Skalare Alter und JungAlter Zahlen speichern Das obige Beispiel Script gibt als CGI Script den HTTP Header und HTML Code aus Dabei verwendet es die Skalare in den print Anweisungen an den nötigen Stellen Im HTML Code der beim Browser ankommt erscheint dann an der entsprechenden Stelle der aktuelle Wert des Skalars Typ Umwandlung von Skalaren Skalare können sowohl Zahlen als auch Zeichenketten speichern Auch ein und derselbe Skalar kann im Laufe eines Scripts mal eine Zahl mal eine Zeichenkette speichern Die so genannte Typumwandlung die in klassischen Programmiersprachen entweder gar nicht möglich ist oder mit einer eigenen Anweisung durchgeführt werden muss erfolgt bei Perl automatisch Beispiel eines vollständigen CGI Scripts in Perl Anzeigebeispiel So sieht s aus Zum Aufruf des Scripts ist eine Internet Verbindung erforderlich usr bin perl w use strict use CGI Carp qw fatalsToBrowser my Wert 123456 my Teilwert substr Wert 1 3 Wert Teilwert print Content type text html n n print DOCTYPE HTML PUBLIC W3C DTD HTML 4 01 Transitional EN n print html head title Testausgabe title n print head body n print var Teilwert var lautet b Teilwert b br n print Und var Wert var lautet b Wert b br n print body html n Erläuterung Im Beispiel wird ein Skalar Wert deklariert und bekommt dabei eine Zahl zugewiesen Anschließend wird ein weiterer Skalar Teilwert deklariert Diesem Skalar wird der Rückgabewert einer Perl Funktion zugewiesen nämlich der Funktion substr Dies ist eine typische Zeichenketten Funktion Sie extrahiert aus einer Zeichenkette einen Teil davon Nun werden Zahlen im Computer aber anders gespeichert als Zeichenketten In den meisten anderen Programmiersprachen wäre es deshalb ein schwerer Fehler zu versuchen einer solchen Zeichenketten Funktion eine Zahl zu übergeben In Perl ist das jedoch kein Problem Im Beispiel wird der Funktion einfach Wert übergeben also der Skalar in dem zu diesem Zeitpunkt eine Zahl gespeichert ist Perl bewertet die Zahl bei dem Wunsch eine Zeichenketten Funktion darauf anzuwenden automatisch als Zeichenkette sprich als Abfolge von Ziffern Dezimalzeichen usw Im Beispiel extrahiert die Funktion substr die Zeichen 2 bis 4 der Zeichenkette übergeben werden Startposition

    Original URL path: http://html.ekiwi.de/perl/sprache/skalare.htm (2016-04-25)
    Open archived version from archive

  • SELFHTML: Perl / Perl-Sprachelemente / Vordefinierte Variablen in Perl
    letzten Klammer Nur lesbar nicht änderbar Mann und Frau a zA Z und a zA Z print n NR INPUT LINE NR Enthält die aktuelle Zeilennummer der zuletzt eingelesenen Datei Im nebenstehenden Beispiel werden alle Zeilen einer Textdatei eingelesen und ausgegeben Am Ende kann darüber Auskunft geben wie viele Zeilen eingelesen wurden open DATEI readme txt while DATEI print print Zeilen gelesen close DATEI RS INPUT RECORD SEPARATOR Enthält den eingestellten Eingabeseparator Kann geändert werden auch mehrere Zeichen sind erlaubt Das nebenstehende Beispiel bewirkt dass eine Eingabe von der Standardeingabe erst dann abgeschlossen ist wenn der Anwender die Zeichenfolge ENDE eingibt und Return drückt Der voreingestellte Wert ist das Zeilenumbruch Zeichen n ENDE DeinName STDIN print DeinName ORS OUTPUT RECORD SEPARATOR Erlaubt die Zuweisung einer Zeichenfolge die automatisch an jede Ausgabe mit print eingefügt wird print ein Wert OFS OUTPUT FIELD SEPARATOR Erlaubt die Zuweisung einer Zeichenfolge die automatisch an jeden Einzelwert angehängt wird der mit print in Form mehrerer durch Kommata getrennter Einzelwerte ausgegeben wird print Wert noch einer LIST SEPARATOR Erlaubt die Zuweisung einer Zeichenfolge die automatisch an jeden Einzelwert außer dem letzten angehängt wird wenn mit print eine Liste bzw ein Array innerhalb einer Zeichenkette interpoliert ausgegeben wird Liste 1 2 3 4 print Liste OUTPUT AUTOFLUSH Wenn diese Variable auf einen Wert ungleich 0 gesetzt wird werden Ausgaben mit print nicht gepuffert sondern erfolgen in dem Augenblick wo die print Anweisung interpretiert wird Normalerweise puffert Perl Ausgaben um sie dann blockweise auszugeben 1 FORMAT PAGE NUMBER Siehe Funktion format FORMAT LINES PER PAGE Siehe Funktion format FORMAT LINES LEFT Siehe Funktion format FORMAT NAME Siehe Funktion format FORMAT TOP NAME Siehe Funktion format FORMAT LINE BREAK CHARACTERS Siehe Funktion format L FORMAT FORMFEED Siehe Funktion format A ACCUMULATOR Siehe Funktion format Vordefinierte Skalare für Umgebungsinformationen Kurzform Langform Bedeutung Kleines Beispiel CHILD ERROR Enthält den Status der zuletzt von einem system Aufruf einer geschlossenen Pipe oder durch Backticks von einem Kindprozess erzeugt wurde system command 0 or die Fehler bei system ERRNO OS ERROR Enthält eine im Programm Kontext aktuelle Fehlermeldung oder Fehlernummer sofern ein Fehler aufgetreten ist Die nebenstehende Anweisung versucht eine Datei zu öffnen und gibt im Fehlerfall die vordefinierte Perl Fehlermeldung aus wenn die Datei nicht geöffnet werden kann und beendet das Programm open DATEI nixda txt or die Fehler bei open EVAL ERROR Enthält einen Wert ungleich null sofern ein Fehler bei einer Anwendung von eval aufgetreten ist Wenn kein Fehler aufgetreten ist enthält sie nichts eval system dir if print dir nicht möglich n PID PROCESS ID Enthält die Prozess ID des aktuellen Prozesses in dem das Script läuft so wie sie vom Betriebssystem zugewiesen wurde print UID REAL USER ID Enthält die reale User ID des den aktuellen Prozess ausführenden Benutzers sofern das Betriebssystem auf dem der Perl Interpreter übersetzt wurde das unterstützt print EUID EFFECTIVE USER ID Enthält die effektive User ID des den aktuellen Prozess ausführenden Benutzers sofern das Betriebssystem auf dem der Perl Interpreter übersetzt wurde das unterstützt

    Original URL path: http://html.ekiwi.de/perl/sprache/vordefiniert.htm (2016-04-25)
    Open archived version from archive

  • SELFHTML: Perl / Perl-Sprachelemente / Referenzen bzw. Zeiger (Variablen)
    Saetze 2 innerhalb der print Anweisungen haben wie schon im Beispiel zu Skalaren nichts mit Referenzen zu tun sondern dienen der Maskierung Beachten Sie Wie auch bei Skalarreferenzen bietet Perl Ihnen unterschiedliche Notationsmöglichkeiten So können Sie statt Saetzezeiger auch Saetzezeiger notieren und statt Saetzezeiger 2 können Sie auch die Urvariante Saetzezeiger 2 oder die Variante Saetzezeiger 2 verwenden Referenzen auf Hashes Sie können eine Referenz auf einen Hash erzeugen und über diese Referenz auf den Hash als Ganzes sowie auf dessen einzelne Schlüssel und Werte zugreifen Beispiel eines vollständigen CGI Scripts Anzeigebeispiel So sieht s aus Zum Aufruf des Scripts ist eine Internet Verbindung erforderlich usr bin perl w use strict use CGI Carp qw fatalsToBrowser my Sprachen HTML How To Make Love XHTML Extended How To Make Love XML Extended Making Love my Sprachenzeiger Sprachen print Content type text html n n print DOCTYPE HTML PUBLIC W3C DTD HTML 4 01 Transitional EN n print html head title Testausgabe title n print head body n print Variablentyp und Speicheradresse von Sprachen Sprachenzeiger br n print Inhalt von Sprachen Sprachenzeiger br n print Bedeutung von XML Sprachenzeiger XML br n print body html n Erläuterung Im Beispiel wird zunächst ein Hash namens Sprachen deklariert und mit Anfangswerten initialisiert Anschließend wird eine Referenz auf diesen Hash mit Namen Sprachenzeiger deklariert Die Referenz selber ist ein Skalar der durch den zugewiesenen Wert Sprachen zur Referenz wird Der Backslash vor dem Prozentzeichen signalisiert die Referenz auf den Hash Das Beispiel erzeugt HTML Code und gibt dabei verschiedene Daten aus In der ersten print Anweisung wird zum besseren Verständnis der gespeicherte Wert der Referenz Sprachenzeiger ausgegeben das ist so etwas wie HASH 0xb65b28 Die zweite print Anweisung gibt den kompletten Inhalt des Hashes aus Auf den Hash als Ganzes wird über die Referenz mit der Syntax Sprachenzeiger zugegriffen Die Referenz steht also in geschweiften Klammern und unmittelbar davor ist ein Prozentzeichen notiert das auf den Hash hinweist In der dritten print Anweisung wird direkt das Hash Element mit dem Schlüssel XML angesprochen Direkt notiert wäre dieses Element mit Sprachen XML ansprechbar Im Beispiel wird es jedoch über die Referenz angesprochen und dabei lautet die Syntax Sprachenzeiger XML Notiert wird also die Referenz gefolgt von dem Pfeiloperator und dem gewünschten Hash Schlüssel in geschweiften Klammern Innerhalb von Sprachenzeiger XML dürfen in diesem Kontext also innerhalb von Zeichenketten keine Leerzeichen vorkommen Beachten Sie Wie bei Array Referenzen bietet Perl Ihnen auch hier unterschiedliche Notationsmöglichkeiten So können Sie wieder statt Sprachenzeiger auch Sprachenzeiger notieren und statt Sprachenzeiger XML können Sie auch die Varianten Sprachenzeiger XML oder Sprachenzeiger XML verwenden Referenzen auf Subroutinen Sie können eine Referenz auf eine Subroutine setzen und über diese Referenz die Subroutine aufrufen Beispiel eines vollständigen CGI Scripts Anzeigebeispiel So sieht s aus Zum Aufruf des Scripts ist eine Internet Verbindung erforderlich usr bin perl w use strict use CGI Carp qw fatalsToBrowser sub Zufallswert return int rand 1000 1 my Ergebnis Zufallswert my Subroutinenzeiger Zufallswert my Referenzergebnis Subroutinenzeiger print Content type text html n n print DOCTYPE HTML PUBLIC W3C DTD HTML 4 01 Transitional EN n print html head title Testausgabe title n print head body n print Ergebnis Ergebnis br n print Subroutinenzeiger Subroutinenzeiger br n print Referenzergebnis Referenzergebnis br n print body html n Erläuterung Im Beispiel wird eine Subroutine namens Zufallswert notiert Diese Subroutine ermittelt mit Hilfe der Perl Funktionen rand und int eine zufällige Ganzzahl zwischen 1 und 1000 und gibt die ermittelte Zahl mit return zurück Mit der Anweisung my Ergebnis Zufallswert wird die Subroutine aufgerufen Der Rückgabewert also eine ermittelte Zufallszahl wird im Skalar Ergebnis gespeichert Mit der Anweisung my Subroutinenzeiger Zufallswert wird dagegen nur ein Zeiger auf die Subroutine Zufallswert deklariert Die Funktion wird dabei nicht aufgerufen Dass es sich um eine Referenz handelt bewirkt die Syntax Zufallswert beim zugewiesenen Wert Der Backslash am Anfang signalisiert die Referenz und das Ampersand Zeichen eine Subroutine Dahinter folgt der Name der Subroutine Mit der Anweisung my Referenzergebnis Subroutinenzeiger wird die Subroutine Zufallswert wieder aufgerufen Diesmal aber nicht wie in der ersten Anweisung direkt sondern über die zuvor definierte Referenz Die Syntax ist dabei so dass die Referenz in geschweiften Klammern steht und ein Ampersand Zeichen vorangestellt bekommt Die leeren runden Klammern hinter dem Namen der Subroutine sind übrigens nicht zwingend nötig Der Rückgabewert des zweiten Aufrufs von Zufallswert wird in dem Skalar Referenzergebnis gespeichert Das Beispiel sendet HTML Code an den Browser und gibt dabei die drei Werte von Ergebnis Subroutinenzeiger und Referenzergebnis aus Während die beiden Skalare Ergebnis und Referenzergebnis eine Zufallszahl zwischen 1 und 1000 enthalten ist der Inhalt von Subroutinenzeiger nur der Zeigertyp und die Arbeitsspeicheradresse z B so etwas wie CODE 0xb65b28 Beachten Sie Perl bietet Ihnen auch bei der Dereferenzierung von Code Referenzen unterschiedliche Notationsmöglichkeiten So können Sie analog zu Skalar und Array Referenzen statt Subroutinenzeiger auch Subroutinenzeiger oder Subroutinenzeiger notieren Referenzen auf Dateihandles Bei Funktionen für Ein Ausgabe und Lesen Schreiben von Daten haben Sie viel mit Dateihandles zu tun Dateihandles verhalten sich anders als gewöhnliche Variablen So können Sie ihnen keine direkten Werte zuweisen sondern nur die Werte nutzen die dem Dateihandle bei Bedarf vom Perl Interpreter selbst zugewiesen werden Die Werte beinhalten perl interne Informationen über den Ein Ausgabekanal auf den Sie mittels des Dateihandles zugreifen Für Sie als Benutzer ist allerdings nur der Name des Handles interessant um den Rest kümmert sich der Perl Interpreter selbst Auf ein solches Dateihandle können Sie ebenfalls eine Referenz setzen Hier liegt eine weitere Besonderheit gegenüber gewöhnlichen Variablen in Perl Sie müssen diese Referenz zur Benutzung des Dateihandles nicht explizit dereferenzieren Das erledigt der Perl Interpreter automatisch wenn es notwendig ist Beispiel eines vollständigen CGI Scripts Anzeigebeispiel So sieht s aus Zum Aufruf des Scripts ist eine Internet Verbindung erforderlich usr bin perl w use strict use CGI Carp qw fatalsToBrowser open DATEI tmp server cfg die nicht gefunden my HandleReferenz DATEI my Zeilen HandleReferenz my Zeilenzahl Zeilen my HandleName HandleReferenz close HandleReferenz print Content type text html n n print

    Original URL path: http://html.ekiwi.de/perl/sprache/referenzen.htm (2016-04-25)
    Open archived version from archive

  • SELFHTML: Perl / Perl-Sprachelemente / Hashes (Variablen)
    Script vorkommen Komplette Hashes also mit dem Prozentzeichen beginnend werden innerhalb von Anführungszeichen in print Anweisungen nicht interpretiert Um einen Hash komplett auszugeben so wie im obigen Beispiel müssen Sie die Technik nutzen mehrere Einzelwerte mit print auszugeben die durch Kommata getrennt sind wie im obigen Beispiel gezeigt Anstelle von konstanten Daten können Sie auch andere Variablen in einen Hash einfügen Zum Beispiel my Alter 23 my Daten Name Jana Alter Alter Hashes lassen sich im Zusammenhang mit CGI Scripts sehr sinnvoll einsetzen So ist es beispielsweise möglich den Datenstrom eines vom Anwender ausgefüllten HTML Formulars in einen Hash einzulesen wobei als Hash Schlüssel jeweils der Feldname des Formularelements gespeichert wird und als Wert der Wert den der Anwender in dem betreffenden Formularelement eingegeben oder ausgewählt hat Auf einzelne Schlüssel und Werte zugreifen Genau wie bei Listen greifen Sie auf einen Skalar zu wenn Sie einzelne gespeicherte Werte eines Hashes auslesen oder ihnen Werte zuweisen Zum Zugriff verwenden Sie den Schlüssel Beispiel eines vollständigen CGI Scripts Anzeigebeispiel So sieht s aus Zum Aufruf des Scripts ist eine Internet Verbindung erforderlich usr bin perl w use strict use CGI Carp qw fatalsToBrowser my Daten Name Jana Alter 23 Ort Berlin Bildung Abitur print Content type text html n n print DOCTYPE HTML PUBLIC W3C DTD HTML 4 01 Transitional EN n print html head title Testausgabe title n print head body n print Daten Name ist Daten Alter Jahre alt wohnt in Daten Ort und hat Daten Bildung n print body html n Erläuterung Im Script wird wieder der Hash Daten deklariert und mit vier Werten initialisiert diesmal gleich in der besseren Notationsweise Das Script erzeugt wieder HTML Code und gibt darin die Daten aus Diesmal wird dabei jedoch auf die einzelnen Werte des Hashes Daten zugegriffen Mit Daten Name wird auf jenes Element des Hashes zugegriffen das den Schlüssel Name hat Das wie vielte Element im Hash dies ist brauchen Sie nicht zu wissen Es genügt den Schlüssel anzugeben Damit wird auf den entsprechenden Wert zugegriffen Daten Name greift im Beispiel also auf den Wert Jana zu Wichtig ist dass der Schlüssel in geschweiften Klammern stehen muss Die Klammern gehören in diesem Kontext innerhalb von Zeichenketten zum Variablennamen und müssen direkt hinter dem Namen des Hashes notiert werden kein Leerraum erlaubt Die Syntax wie in Daten Name zeigt mit dem voranstehenden Dollarzeichen dass es sich bei einem Hash Wert um einen Skalar handelt Beachten Sie Anstelle von Daten Name können Sie auch Daten Name notieren also ohne Anführungszeichen Solange in den geschweiften Klammern nichts weiter steht als ein einzelner Schlüssel der den Regeln der Namensvergabe genügt dürfen die Anführungszeichen entfallen Funktionen und Operationen zum Manipulieren von Hashes Viele Perl Funktionen gelten für Listen und Hashes einige davon aber auch nur für Hashes da das Manipulieren von Hashes einige Besonderheiten aufweist Ein paar wichtige Möglichkeiten sollen hier mit Verweisen auf die Beschreibung der jeweiligen Funktionen genannt werden Mit unbekannten Schlüsseln arbeiten Wenn Sie einen Hash mit Werten initialisieren kennen Sie natürlich

    Original URL path: http://html.ekiwi.de/perl/sprache/hashes.htm (2016-04-25)
    Open archived version from archive