|
Rastafarii ::http://us3.php.net/exceptions
// klasa
if(!empty($this->name) & !empty($minwidth) & !empty($minheight) & !empty($this->maxwidth) & !empty($this->maxheight))
{
...
}
else
{
throw new Exception("ERROR: class image->dimensions($name, $minwidth, $minheight, $maxwidth, $maxheight) must have all property defined!");
}
// kod van klase
try {
$image->dimensions();
}
catch (Exception $e)
{
echo $e->getMessage(); //ili kako god vec resis da prikazes gresku
}
Mhmmm... zanimljivo, nisam ovo koristio... Dali ovo mogu koristiti u funkciji ako na primer imam neki kod za neko izračunavanje pa dobijem grešku, odmah da pokrenem drugo izračunavanje ili kod koji pokuša tu grešku da ispravi pa ako i onda nastane greška onda da ispiše tu grešku?
Ako si me razumeo šta hoću da kažem, znači:
Obradi podatke
Solucija 1: nema greške -> nastavi sa radom
Solucija 2: nađena greška -> pokušaj rešiti problem -> ako nije rešen onda stopiraj i ispiši grešku.
Nekada kada sam radio softver u VisualBasic sam kod greške koristio soluciju rešavanja problema tako što sam napisao deo koda koji zamenjuje neku funkciju ili poziva drugu funkciju koja će pokušati tu grešku da ispravi, pa sam ponekad išao do 3-4 nivoa provere i debagovanja pa ako zaista ništa ne uspe onda je apsolutna greška i stopiram program. U PHP sam radio takve simulacije sa if...else.. ali nisam toliko imao mogućnosti "slobode" da automatski debagujem. Znam da ovo nije tema za ovaj post ali me jakooo zanima...
|