Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Używanie interfacesu
gcdreak
post
Post #1





Grupa: Zarejestrowani
Postów: 365
Pomógł: 8
Dołączył: 16.12.2008

Ostrzeżenie: (0%)
-----


Witam!
Czy może mi ktoś wyjaśnić po co w poniższym kodzie jest użyty interface i jakie korzyści nam daje?(jakieś przykłady?).
Kod pochodzi ze strony: http://pl.wikibooks.org/wiki/PHP/Autoryzacja_i_logowanie
Wygląda tak:
Kod
interface storage {
    public function login($name, $pass);//1
}

Jest tam niby wyjaśnienie, ale nic mi ono nie mówi i kompletnie nie mogę dopasować do tego żadnego przykładu.
Przeglądnąłem już kilka stron i szukałem informacji w googlach nt tworzenia interfaców (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Proszę o wyjaśnienie
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
marcio
post
Post #2





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat
  1. Tworzymy interfejs, który należy zaimplementować aby stworzyć sterownik przechowywania danych
  2. Ta klasa to sterownik przechowywania danych w bazie danych MySQL
  3. Funkcja pobiera dane ze źródła przechowywania(czyli w tym wypadku bazy danych), i zwraca je, jeśli nie ma użytkownika to zwraca false.

Czytales to??

Interfejs przydaje sie wtedy kiedy musisz napisac kilka sposobow sprawdzania user'a(chodzi o ten przyklad z linku ktory podales) przyda sie to wtedy gdybys klase z przykladu ktora podales musial zaimplementowac tak zeby dzialala i na plikach *.txt,MySql,Orcalce i kij wie co jeszcze wtedy robisz kilka klad ktore "dziedzicza" metody z interfejsow i w odpowiedniej klasie implementujesz metody w odpowiedni sposob.

W przykladzie wyzej w klasie mysqlStorage masz implementacje interfejsu Storage tak by dzialal na bazie mysql mozesz zrobic np klase FileStorage ktora bedzie implemetowac interfejs Storage a metode w tej klasie tak napiszesz by pobierala i sprawdzala user'a z pliku *.txt.

Rozumiesz?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 15:03