phpbar.de logo

Mailinglisten-Archive

[php] try / catch im __construct()

[php] try / catch im __construct()

Felix Jacobi felix at jacobionline.de
Fre Jan 16 14:13:02 CET 2009


Hallo.

Soweit ich weiß, gibt es keinen automatischen Error Code, d. h. du 
darfst ihn selbst bestimmen.

[...]
              throw new Exception("Fehler!", 10);
[...]

Damit hast du dann deinen ErrorCode von 10.

Ansonsten macht die Klasse genau das, was du möchtest...
Denn $wert wird nicht mehr berechnet, da du vorher schon die Exception 
schmeißt und den Try Block somit abschließt.

Grüße,
Felix

Stephan Krauß wrote:
> Hallo !
>
> Ich möchte eine Ausnahmebehandlung im Konstruktor einer Klasse
> einbauen. Siehe Beispiel. Leider wird die Ausnahmebehandlung durchgeführt
> und es kommt der Fehlercode 0. Kann das sein ?
>
> -----------------------------------
>
> class test{
>
> 	public function __construct($a,$b){
>
> 		try{
> 			throw new exception("Fehler");
>
> 			$wert = $a / $b;
> 		}
> 		catch(exception $e){
> 			echo "Fehlermeldung: ".$e->getMessage();
>  			echo "<br><br>";
>  			echo "Fehlercode: ".$e->getCode();
>  			echo "<br>";
>  			echo "Datei: ".$e->getFile();
>  			echo "<br>";
>  			echo "Codezeile: ".$e->getLine()."<br><br>";
> 		}
>
> 		echo "gerechnet: ".$wert;
>
> 		return;
> 	}
>
> }
>
> $neu = new test(5,2);
>
> ---------------------------
>
> Gruß Stephan
>   


php::bar PHP Wiki   -   Listenarchive