![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 15.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Poszukuje sposobu na sprawdzenie czy dana klasa jest implementacją podanego interfejsu. Sytuacja wygląda tak że dostanę dużo plików .php od osób mi pomagających, każdy z tych plików będzie zawierał klasę "HTML", jako że uzgodniliśmy wspólne API dla tych klas to stworzony został interfejs który teoretycznie przez wszystkie klasy "HTML" powinien być implementowany... ale wiadomo jak to bywa ![]() W zależności od potrzeb ładuję jeden z tych plików i teraz zanim użyję tej klasy to przydałoby się sprawdzić czy dana klasa faktycznie implementuje interfejs. Jedyne co wymyśliłem to stworzyć instancję klasy "HTML" i sprawdzić czy jest instancją interfejsu
Jednak to nie do końca rozwiązanie o które mi chodzi, ponieważ klasa "HTML" zawiera tylko i wyłącznie metody statyczne... więc tworzenie obiektu tylko po to żeby sprawdzić i go usunąć nieco mija się z celem. PS. Czy jest możliwość utworzenia obiektu klasy z łańcucha znaków zawierającego nazwę klasy?? np. przekażę do pliku "index.php?klasa=cFoo" i chciałbym utworzyć klasę cFoo. Pomijając switch/case czy jakieś if'y ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 304 Pomógł: 51 Dołączył: 4.02.2005 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi o pierwsze pytanie: http://pl2.php.net/manual/pl/reflectioncla...tinterfaces.php
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 444 Pomógł: 79 Dołączył: 26.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 01:56 |