copyright (c)  2003   useGroup
PHP

Jochen Stärk
PHP-Tutorial
Eigene Funktionen und Bibliotheken benutzen

nach untenFunktionen
nach untenGlobale, lokale Variablen
nach untenBibliotheken
nach untenFehler in Bibliotheken deutlich machen

Funktionen

nach obenFunktionen 

Funktionen definiert man in PHP Javascript-ähnlich: Man gebe das Schlüsselwort function an, den Funktionsnamen und die Parameter, Anfang und Ende der Funktion werden wie üblich mit den geschweiften Klammern { und } bezeichnet,

Rückgabewerte mit return zurückgeliefert.

<?php
echo "2 mal 2 ist ".ergebnis(2);

function ergebnis($zahl)
{
  $res=$zahl*$zahl;
  return $res;
}

?>


Globale, lokale Variablen

nach obenGlobale, lokale Variablen 

Variablen sind in PHP grundsätzlich, Gott sei dank, lokal (nicht wie in Perl!). Will man anderswo verwendete Variablen "importieren" schreibt man vor der Verwendung global <Variablenname>;, examplew.

<?php
echo "2 mal 2 ist ".ergebnis(2);
$res="gleich ";
function ergebnis($zahl)
{
  global $res;
  $res=$res.$zahl*$zahl;
  return $res;
}

?>


Bibliotheken

nach obenBibliotheken 

Dateien, die nur PHP-Funktionen enthalten, werden mit require eingebunden. Anders als in vielen anderen Sprachen gibt es zusätzlich eine Include-Funktion (include "xyz.php";) wobei die mit include eingebundenen Dateien zuerst ausgewertet und dann eingebunden werden. Require arbeitet also schneller. (Um die Verwirrung perfekt zu machen tut require das, was in C++ die Direktive #include tut, ein PHP-ähnliches Include ist im C-Standard nicht vorgesehen weil C-Programme nicht interpretiert, sondern kompiliert werden).

require "dbconnect.phtml";

connecttomydatabase();
Sicherheitshinweis: Sollten Sie die Dateien, die Sie mit require einbinden, nicht .phtml oder .php benannt werden (wie sie Ihre PHP-Dateien bennennen), und wenn diese (z.b. als .inc Datei) nicht vom Webserver ausgeführt, sondern nur angezeigt werden, kann Ihnen ein fremder in den Quelltext Ihrer Bibliotheken spicken. Bei einer beliebten Anwendung von Bibliotheken, der Verwaltung von Datenbankzugriffen kommt so ein Angreifer an Benutzernamen und Passwort Ihrer Datenbank und kann diese von außen manipulieren.


Fehler in Bibliotheken deutlich machen

nach obenFehler in Bibliotheken deutlich machen 

Sollte es möglich sein (und eigentlich ist das immer möglich), Fehler beim Aufruf von Bibliotheksfunktionen zu machen, zum Beispiel indem falsche Argumente übergeben werden, sollten Sie das innerhalb Ihrer Bibliothek mit trigger_error bemängeln. Im Gegensatz zum DIE-Statement hat das den Vorteil, dass die genaue Zeile des Fehlers, eventuell sogar mit einem backtrace, angegeben wird, und die Fehlerbehandlung darauf reagieren kann - bei einem eigenen Error-Handler zum Beispiel mit einer Mail an den Entwickler.


copyright (c)  2003   useGroup