Jazyk PHP - pokračování
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
Zpracov
Zpraco ání chyb v PHP4 a 5
ání chyb v PHP4 a
error
erro _reporting
_reportin ()
(
set_error_handler()
set_error_handler(
kuk chyby_4.php
kuk chyby_4.ph
<?
<
error_reporting(E_ALL);
function my_error_handler ($severity, $msg, $filename,
$line_num) {
// dostanu info o chybe a muzu si s ni delat co chci
echo "Zavaznost: $severity <br>Hlaska: $msg <br> Soubor:
$filename <br> Cislo radku: $line_num <br>";}
set_error_handler("my_error_handler");
echo $xxx;?>
Výjimky
imk v PHP5
v PHP
Je zde zaveden lepší způsob ošetřování výjimek.
Je zde zaveden lepší způsob ošetřování výjimek
Podobnost s Javou.
Podobnost s Javou
Jestliže je vygenerována výjimka (chyba), je
Jestliže je vygenerována výjimka (chyba), je
vyroben nový objekt.
vyroben nový objekt
Každá výjimka je rozšířením třídy
Každá výjimka je rozšířením třídy Exception
Exceptio .
Každá výjimka je rozšířením třídy
Každá výjimka je rozšířením třídy Exception
Exceptio
Odvozením nové třídy lze vyrábět vlastní výjimky.
Odvozením nové třídy lze vyrábět vlastní výjimky
Výjimky
Výjimk
class DevZeroException extends Exception {}
class NegativValueException extends Exception {}
function deleni ($a, $b) {
try {
if ($b == 0) throw new DevZeroException();
if ($a<0 || $b<0) throw new
NegativValueException();
return $a/$b;
}
/*catch (Exception $e) {
echo "doslo k nejake vyjimce!!!!";
return false;
}*/
catch (DevZeroException
$e) { echo ("nulou nelze
delit\n");
return false;}
catch (NegativValueException
$e2) {echo ("negative
value\n");
return false;}
}
deleni(1,2);
// zadna vyjimka, vse OK
deleni(1,0);
// DevZeroException
deleni(-1,5); // NegativValueException
Abstraktní třídy a metody
Abstraktní třídy a metod
Abstraktní metoda definuje jméno a parametry,
Abstraktní metoda definuje jméno a parametry,
žádnou implementaci
žádnou implementac
Třída, která má alespoň jednu abstraktní metodu