Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> $this->metoda()-> i cos jeszcze ..., czym są Fluent Interfaces
xbitdesigns
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 24.04.2006
Skąd: Kielce

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


Czesc.

Co to jest:

  1. <?php
  2. $this->blah()->smash();
  3. ?>


a moze powinno byc:

  1. <?php
  2. $this->blah()->$this->smash();
  3. ?>


Jak to sie nazywa, bo nawet chcac w google znalezc nie wiem czego szukac (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif)

Ten post edytował xbitdesigns 5.04.2008, 01:58:31
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(xbitdesigns @ 4.04.2008, 21:17:47 ) *
Co to jest:
  1. <?php
  2. $this->blah()->smash();
  3. ?>
Taka konstrukcja nazywa się Fluent Interfaces.
Jest to sposób kodowania polegający na tym że jedna funkcja klasy zwraca instancję klasy z której została wywołana dzięki temu możesz kontynuować wykonywanie funkcji dalej.
Mona dzięki temu osiągnąć bardzo wygodne rzeczy. Na przykład w Doctrine możesz robic tak:
  1. <?php
  2.  
  3. $query = Doctrine_Query::create()
  4. ->from('User u')
  5. ->leftJoin('u.Group g')
  6. ->orderby('u.username ASC');
  7.  
  8. // ...
  9.  
  10. ?>


Więcej poczytasz tutaj: Fluent Interfaces in PHP
W jednym z ostatnich php|archtectów był też ciekawy artykuł: Are fluent interfaces useful?
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: 6.10.2025 - 15:37