Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> $a->b()->c(); na jakiej zasadzie to działa
Spawnm
post
Post #1





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Witam,
pytanie jak w temacie , jak to działa?
myślałem że wystarczy
  1. <?php
  2. class a{
  3.  public function b(){
  4.  //...
  5.  }
  6.  
  7.  public function c(){
  8.  //...
  9.  }
  10. }
  11. $a=new a();
  12. $a->b()->c();
  13. ?>

jednak taki kod nie działa ...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Metoda "b" z obiektu $a musi zwrócić jakiś obiekt, który będzie posiadał metodę "c" - może to być on sam:
  1. <?php
  2. class ABC{
  3.  public function b(){
  4.    var_dump(__METHOD__);
  5.    return $this;
  6.  }
  7.  public function c(){
  8.    var_dump(__METHOD__);
  9.    return $this;
  10.  }
  11. }
  12.  
  13. $a = new ABC();
  14. $a->b()->c()->b()->c();
  15. ?>
  1. <?php
  2. class ABC{
  3.  public function b(){
  4.    return new DEF();
  5.  }
  6. }
  7.  
  8. class DEF{
  9.  public function c(){
  10.    var_dump(__METHOD__);
  11.  }
  12. }
  13.  
  14. $a = new ABC();
  15. $a->b()->c();
  16. ?>
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: 13.10.2025 - 12:30