phpbar.de logo

Mailinglisten-Archive

[php] exit innerhalb einer funktion

[php] exit innerhalb einer funktion

Ulf Wendel UW_(at)_netuse.de
Thu, 29 Jul 1999 11:38:06 +0200


Rainer Wollthan wrote:

> wenn jetzt ein fehler auftritt, soll nur diese function nicht mehr
> weiter ausgeführt werden.
> klappt mit exit auch ganz toll - ABER leider exit exit das ganze
> folgende script auch gleich mit ;(
> 
> es soll aber nur die function geextitet werden, weiß da jemand was ?

Hallo Rainer, 

gewöhne Dir gleich von Anfang an an etwas mehr Zeit in saubere
Fehlerbehandlungsroutinen zu stecken. Führe globale Variablen für
interne Fehlercodes, belegete kritische Funktionen mit einem _(at)_
(Unterdrückung der Fehlerausgabe bei einer PHP Funktion, und
beachte die Rückgabewerte!

Oft stehst man auch vor dem Problem, daß eine Funktion wirklich
ein exit() verlangt, z.B. weil sonst der Datenbestand
inkonsistent wird. Ich bediene mich dann immer einer
Hilfsfunktion, um Fehlermeldungen auszugeben die etwa folgende
Aufbau hat:

warnung($titel, $text, $status=false, $javascript=false,
$email=false) {
    
   - prüfe, ob die Funktion korrekt aufgerufen.
   - gibt eine formatierte HTML Warnmeldung aus
   - falls $javascript, erzeuge einen alert() (das HTML ist
eventuell wg. fehlerhaftem Tabellenaufbau unsichtbar)
   - falls $email, versende eine Mail an Technik mit exakter
Fehlerbeschreibung und Status
   - falls $status: exit();

} 

Wenn das alles zu viel ist, warum dann nicht so:

$ok=suche_in_db("Emil Meier);
if (false==$ok) {
 warnung("...");
} else {
 echo "Hallo Emil Meier!";
}

Auch so mußt Du kein exit() ausführen, der Begrüßungstext wird
nur bei Erfolg ausgegeben...

Ulf

-- 
Ulf Wendel
NetUSE Kommunikationstechnologie GmbH
Siemenswall, D-24107 Kiel, Germany
Fon: +49 431 386435 00  --  Fax: +49 431 386435 99


php::bar PHP Wiki   -   Listenarchive