Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Odwołanie do "rodzica"
bartyk
post
Post #1





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 8.11.2004

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


Mam "klasę w klasie". Czyli


  1. <?php
  2.  
  3. class A{
  4.  var A0;
  5.  var B1=new B();
  6.  funkcja A1{}
  7. }
  8.  
  9. class B {
  10. var B0;
  11. funkcja B1{}
  12. }
  13.  
  14. var A1=new A()
  15.  
  16. ?>


Chcąc wywołać funkcję B1 z wnętrza klasy A podaje:

  1. <?php
  2. $this->B1->B1()
  3. ?>


A jak to zrobić w "drugą stronę"??

Czy zapis
Kod
$A1->A1()
wystarczy??

Wiem, że może durne i lamerskie pytanie, ale...



// proszę używać prawidłowego bbCode

Ten post edytował DeyV 5.04.2005, 12:38:17
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
aleksander
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 742
Pomógł: 0
Dołączył: 14.12.2003
Skąd: Gdańsk, Trójmiasto

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


1. zły bbcode
(IMG:http://forum.php.pl/uwaga.gif)

2. nie da się czegoś takiego zrobić w drugą stronę. Możesz użyć singletona (było o nim sporo na forum)
Go to the top of the page
+Quote Post
dasko
post
Post #3





Grupa: Zarejestrowani
Postów: 179
Pomógł: 0
Dołączył: 9.11.2004

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


Ewentualnie możesz metode klasy o jeden poziom wyżej zrobić statyczą i odwoływać się:
  1. <?php
  2.  
  3. A::B();
  4.  
  5. ?>

Słowo 'static' jest potrzebne tylko w PHP5, z tego co wiem w PHP4, kazda metoda jest jakby statyczna. Oczywiście metoda nie może zawierać w sobie $this, bo nie operuje na żadnym obiekcie.
Go to the top of the page
+Quote Post

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: 25.08.2025 - 06:48