Witam,
Przeczytalem artykul http://www.webinside.pl/php/artykuly/137 i mam problem. Nie wiem czy to wina mojej konfiguracji (PHP Beta 3, bez Zend Optimizer) czy jakiś błąd w artykule.
Chodzi o to, że wywala błąd przez parent::exception().
UPDATE:
Dodatkowo mam problem z namespace, tez wywala blad.
Zaintalowalem najnowsza na dzien dzisiejszy PHP Beta 4.
Problem z parent:exception()
Re: Problem z parent:exception()
Co do namespace, to znalazlem juz dlaczego tak sie dzieje: poprostu bylo z tym duzo klopotow i ostatecznie zostalo usuniete z php. szkoda, przydalyby sie napewno nie jednemu z nas, bo latwiej i czytelniej sie tworzy kod.
Pozostaje wiec pytanko:
"Dlaczego parent:exception generuje błąd?"
http://www.webinside.pl/php/artykuly/137
Pozostaje wiec pytanko:
"Dlaczego parent:exception generuje błąd?"
http://www.webinside.pl/php/artykuly/137
Re: Problem z parent:exception()
poprawnie dzialajacy kod to:
[php]<?php
class nowewyjatki extends Exception
{
private $blad;
function __construct( $blad ) {
$this -> blad = $blad;
}
function Komunikat() {
return $this -> blad . " jest przyczyną błędu.";
}
}
class samochod
{
public $samochod;
public function start($mojsamochod) {
if ( $this -> samochod != $mojsamochod ) {
throw new nowewyjatki("Nie mam takiego samochodu");
} else {
echo "Samochód $mojsamochod wystartował...";
}
}
}
$ford = new samochod;
$ford -> samochod = 'mustang';
try {
$ford -> start('mondeo');
} catch (nowewyjatki $blad) {
echo $blad -> Komunikat();
echo "\nW pliku: " . $blad -> getFile();
}
?>[/php]
[php]<?php
class nowewyjatki extends Exception
{
private $blad;
function __construct( $blad ) {
$this -> blad = $blad;
}
function Komunikat() {
return $this -> blad . " jest przyczyną błędu.";
}
}
class samochod
{
public $samochod;
public function start($mojsamochod) {
if ( $this -> samochod != $mojsamochod ) {
throw new nowewyjatki("Nie mam takiego samochodu");
} else {
echo "Samochód $mojsamochod wystartował...";
}
}
}
$ford = new samochod;
$ford -> samochod = 'mustang';
try {
$ford -> start('mondeo');
} catch (nowewyjatki $blad) {
echo $blad -> Komunikat();
echo "\nW pliku: " . $blad -> getFile();
}
?>[/php]
Re: Problem z parent:exception()
no fajny topic, ale autor tego artykulu w webinside powinien uwazac co pisze. napisal o namespace, a przeciez nie ma namespace w php, bo sprawialy za duzo klopotow i je wycofano. ponadto kod podany przez niego nie dziala poprawnie.
co to za pomysl z parent::exception(). wedlug kodu chodzilo o klase Exception a ta nie posiada metody exception(). autorowi pewno chodzilo o wywolanie domyslnej metody w Exception ale to jest niepotrzebne.
co to za pomysl z parent::exception(). wedlug kodu chodzilo o klase Exception a ta nie posiada metody exception(). autorowi pewno chodzilo o wywolanie domyslnej metody w Exception ale to jest niepotrzebne.
