|
||||||||||||
|
New in This Group truehearted Sale is about to end rollicker7/25/2009 6:04:23 AM Znoynye brazil'yanki hotyat1/11/2009 4:20:08 PM Request For PHP Tutorial Content7/7/2008 4:55:09 AM RE: MensHealth 129164/3/2008 4:10:45 AM PHP manual in a PHP course12/12/2007 5:51:44 PM Ein Beispiel einstellen...9/18/2007 1:33:02 PM PHP Handbuch8/19/2007 7:06:05 AM docs partial copyleft4/23/2007 4:18:23 PM Release phpexplorator2/6/2007 12:01:47 PM PHP Manual 71/21/2007 11:40:10 PM |
Ein Beispiel einstellen...
|
|||||||||||
| Group: php.doc.license |
Subscribe
|
Posted:9/18/2007 1:33:02 PM | Replies:0 | Views:14 | Items(0) |
|
Sehr geehrte Damen und Herren,
ich habe schon einmal versucht Sie wegen eines Eintrages anzufragen. Ich schreibe auf meiner Site ein Manual und h�tte nun gerne eines Ihrer Beispiele �bernommen (mit Verweis darauf). Bei dem Beispiel handelt es sich um die Funktion set_error_handler, �bernehmen wollte ich den Quelltext in etwas ver�nderter Form (mehr deutsch). F�r Ihre prompte Antwort bedanke ich mich bereits im Voraus und verbleibe mit freundlichen Gr�ssen Dies w�re der komplette Text, den ich einstellen m�chte: -------------------------------------------------------------------------- Allgemeine Beschreibung:<br /> <br /> set_error_handler() legt die benannte Funktion als aktuellen Fehlerhandler fest. Die Funktion kann beliebig festgelegt werden, �blicherweise gibt sie definierte Fehlermeldungen aus und bei einem kritischen Fehler sollten zus�tzlich "Aufr�umarbeiten" durchgef�hrt werden. <br /> Die Funktion wird mit zwei Parametern aufgerufen: Dem Fehlercode und einem String, der den Fehler beschreibt. Es k�nnen noch drei zus�tzliche Parameter angegeben werden; der Name der Datei wo der Fehler auftrat, die Nummer der Zeile in der genannten Datei wo der Fehler auftrat und den Kontext in welchem der Fehler auftrat. Die Funktion gibt den Namen der benutzerdefinierten Funktion aus, oder false wenn irgend ein Fehler beim setzen des Handlers auftrat. <br /> <br /> Anmerkung: Es kann auch ein Array anstatt einer Funktion definiert werden, welches eine Referenz auf ein Objekt und einen Methodennamen enth�lt �bergibt. <br /> Die folgenden Typen k�nnen nicht von einer benutzerdefinierten Funktion behandelt werden: E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR UND E_COMPILE_WARNING. <br /> <br /> Untenstehendes Beispiel wurde ausnahmsweise aus dem PHP-Handbuch des "PHP-Manuals (Copyright � 1997 - 2005 by the PHP Documentation Group) �bernommen. Leider haben wir auf unsere Ver�ffentlichungsanfrage keine Reaktion erhalten -d.h. die Mail kam beim Empf�nger nicht an. // umdefinieren der Konstanten - nur in PHP 4 define("FATAL", E_USER_ERROR); define("ERROR", E_USER_WARNING); define("WARNING", E_USER_NOTICE); // die Stufe f�r dieses Skript einstellen error_reporting(FATAL | ERROR | WARNING); function myErrorHandler($errno, $errstr, $errfile, $errline) { switch ($errno) { case FATAL: echo "<b>FATALER ERROR</b> [$errno] $errstr<br />\n"; echo " Fataler Fehler in Linie $errline in der Datei $errfile"; echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />\n"; echo "abbrechen...<br />\n"; exit(1); break; case ERROR: echo "<b>ERROR</b> [$errno] $errstr<br />\n"; break; case WARNING: echo "<b>WARNUNG</b> [$errno] $errstr<br />\n"; break; default: echo "Unbestimmter error Typ: [$errno] $errstr<br />\n"; break; } } // Funktion zum Test der Fehlerbehandlung function scale_by_log($vect, $scale) { if (!is_numeric($scale) || $scale <= 0) { trigger_error("log(x) for x <= 0 ist undefiniert, benutze: scale = $scale", FATAL); } if (!is_array($vect)) { trigger_error("Inkorrekte Eingabe vector, Feld mit Werten erwartet", ERROR); return null; } for ($i=0; $i<count($vect); $i++) { if (!is_numeric($vect[$i])) trigger_error("Wert an Position $i ist keine Nummer, verwendet 0 (zero)", WARNING); $temp[$i] = log($scale) * $vect[$i]; } return $temp; } // auf die benutzerdefinierte Fehlerbehandlung umstellen $old_error_handler = set_error_handler("myErrorHandler"); // einige Fehler ausl�sen, zuerst wird ein gemischtes Array // definiert mit einem nichtnummerischen Eintrag echo "vector a<br />"; $a = array(2, 3, "foo", 5.5, 43.3, 21.11); print_r($a); // ein zweites Array erzeugen, das Warnungen generiert echo "----<br />vector b - Warnung (b = log(PI) * a)<br />"; $b = scale_by_log($a, M_PI); print_r($b); // hier ist der Grund f�r das Problem: anstatt einem Array // wird ein String �bergeben echo "----<br />vector c - Fehler<br />"; $c = scale_by_log("not array", 2.3); var_dump($c); // dies ist ein kritischer Fehler, der log() ist f�r null // oder negative Werte nicht definiert echo "----<br />vector d - fataler Fehler<br />"; $d = scale_by_log($a, -2.5); ---------------------------------------------------------------------- |
horsel...@hispeed.ch ("horseland hispeed") 9/18/2007 1:33:02 PM |
|
Hi,
ich sehe kein Problem damit, dass Sie das Beispiel aus dem deutschen=20 Manual (samt Verweis) =C3=BCbernehmen. Bitte bedenken Sie, dass PHP ein internationales Projekt ist und um=20 Antworten zu erhalten, ist es am Besten Ihre Frage auf englisch zu=20 formulieren. I don't see any problem taking over the example from our German=20 online-Manual (including the reference to our online manual) For further questions, please, ask your questions in English. PHP is an=20 international project and most people don't speak German. Sch=C3=B6ne Gr=C3=BC=C3=9Fe, Kind regards, Friedhelm Betz horseland hispeed wrote: > Sehr geehrte Damen und Herren, >=20 > ich habe schon einmal versucht Sie wegen eines Eintrages anzufragen. Ic= h=20 > schreibe auf meiner Site ein Manual und h=C3=A4tte nun gerne eines Ihre= r=20 > Beispiele =C3=BCbernommen (mit Verweis darauf). > Bei dem Beispiel handelt es sich um die Funktion set_error_handler,=20 > =C3=BCbernehmen wollte ich den Quelltext in etwas ver=C3=A4nderter Form= (mehr=20 > deutsch). >=20 > F=C3=BCr Ihre prompte Antwort bedanke ich mich bereits im Voraus und ve= rbleibe >=20 > mit freundlichen Gr=C3=BCssen >=20 >=20 > Dies w=C3=A4re der komplette Text, den ich einstellen m=C3=B6chte: >=20 >=20 >=20 > -----------------------------------------------------------------------= --- > Allgemeine Beschreibung:<br /> <br /> > set_error_handler() legt die benannte Funktion als aktuellen=20 > Fehlerhandler fest. Die Funktion kann beliebig festgelegt werden,=20 > =C3=BCblicherweise gibt sie definierte Fehlermeldungen aus und bei eine= m=20 > kritischen Fehler sollten zus=C3=A4tzlich "Aufr=C3=A4umarbeiten" durchg= ef=C3=BChrt=20 > werden. <br /> > Die Funktion wird mit zwei Parametern aufgerufen: Dem Fehlercode und=20 > einem String, der den Fehler beschreibt. Es k=C3=B6nnen noch drei zus=C3= =A4tzliche=20 > Parameter angegeben werden; der Name der Datei wo der Fehler auftrat,=20 > die Nummer der Zeile in der genannten Datei wo der Fehler auftrat und=20 > den Kontext in welchem der Fehler auftrat. Die Funktion gibt den Namen = > der benutzerdefinierten Funktion aus, oder false wenn irgend ein Fehler= =20 > beim setzen des Handlers auftrat. > <br /> <br /> > Anmerkung: Es kann auch ein Array anstatt einer Funktion definiert=20 > werden, welches eine Referenz auf ein Objekt und einen Methodennamen=20 > enth=C3=A4lt =C3=BCbergibt. > <br /> > Die folgenden Typen k=C3=B6nnen nicht von einer benutzerdefinierten Fun= ktion=20 > behandelt werden: E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING,=20 > E_COMPILE_ERROR UND E_COMPILE_WARNING. > <br /> <br /> > Untenstehendes Beispiel wurde ausnahmsweise aus dem PHP-Handbuch des=20 > "PHP-Manuals (Copyright =C2=A9 1997 - 2005 by the PHP Documentation Gro= up)=20 > =C3=BCbernommen. Leider haben wir auf unsere Ver=C3=B6ffentlichungsanfr= age keine=20 > Reaktion erhalten -d.h. die Mail kam beim Empf=C3=A4nger nicht an. [...] |
b...@php.net (Friedhelm Betz) 9/23/2007 2:11:30 PM |
note 97095 added to soapclient.soapclient
note 97094 added to function.sqlite-changes
note 97093 added to function.sqlite-changes
note 97092 added to ref.xmlrpc
note 97091 added to function.var-export