![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 3 Dołączył: 19.10.2007 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam taki problem. Mam klasę napisaną w PHP4 - konstruktor ma taką samą nazwę jak klasa. Jeżeli chcę dziedziczyć konstruktor z klasy napisanej w PHP4 do klasy napisanej w PHP5, to w jaki sposób to zrobić? parent::__construct(); czy parent::nazwa_klasy(); Mam nadzieję że w miarę jasno napisałem ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
Nie do końca jestem pewien że o to ci chodzi...
Ale możesz sprawdzać czy metoda danego obiektu istnieje: http://pl.php.net/method_exists |
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
?
wynik Kod TXT = BEZ konstruktora
TXT = Z konstruktorem -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#4
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli chcę dziedziczyć konstruktor z klasy napisanej w PHP4 do klasy napisanej w PHP5, to w jaki sposób to zrobić? Brak samodzielności ludzi mnie przeraża. A jakby odpowiedź nie padła kilka dni to siedziałbyś i czekał? Takie rzeczy sprawdza się samemu.parent::__construct(); czy parent::nazwa_klasy(); Ale jeśli nie znasz pojęcia empiryzm to lecimy. Po pierwsze musisz wiedzieć, że PHP5 nadal wykonuje funkcję o nazwie klasy jako konstruktor. Ale tylko wtedy kiedy funkcja __construct() nie jest zdefiniowana. Ta wiedza Ci się przyda. A na potwierdzenie przykład: Wynik: Cytat Konstruktor (po staremu) KlasaPHP5 A teraz Twoja sytuacja: To teraz na podstawie wiedzy zdobytej w poprzednim przykładzie wiesz, że kod ma wyglądać tak: Wynik: Cytat Konstruktor KlasaPHP4 Konstruktor KlasaPHP5 Ale to samo mogłeś zrobić sam ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 3 Dołączył: 19.10.2007 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za wyjaśnienie.
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 20:36 |