Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Odniesienie się do obiektu przez inny w nim powstały
l0ud
post
Post #1





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Witam. Właśnie sobie uświadomiłem że dopiero raczkuję w programowaniu obiektowym, bo nie wiem nawet czy to jest możliwe: mam zamiar odnieść się do $zmienna znajdującej się w $obiekta w innym utworzonym przez niego obiekcie.

  1. <?php
  2. class A {
  3.  
  4. public $zmienna;
  5.  
  6. public function __construct() {
  7. $this->zmienna = asd;
  8. $obiektb = new B;
  9. }
  10.  
  11. }
  12.  
  13. class B {
  14.  
  15. public function __construct() {
  16. //czy da się teraz odnieść do $zmienna w obiekta?
  17. }
  18.  
  19. }
  20.  
  21. $obiekta = new A;
  22. ?>


Czy to jest w ogóle możliwe? (IMG:http://forum.php.pl/style_emoticons/default/wstydnis.gif)

Pozdrawiam

Ten post edytował l0ud 29.03.2008, 21:28:03
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


Nie wiem dlaczego, ale w trakcie czytania na myśl nasunęły mi się dwa wzorce, Budowniczy i Obserwator...
(ale zmęczony jestem, więc nie analizuję tego dokładniej, muszę w końcu wypocząć... ach ten remont)

Cytat(Cysiaczek @ 30.03.2008, 15:57:32 ) *
Pamiętaj, że przechowujesz tylko referencje do obiektów, więc nie jest to coś strasznego. Należy jedynie uważać z kopiami obiektów (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


Dlatego w PHP5 domyślnie jest przy przypisaniu referencja robiona. (można wywalić & jak używasz PHP5 [a masz public więc na pewno tak jest])
Do tego kopiowanie jest ciężkie jak są złożone zależności.

Tak myśląc jednak trochę, to Budowniczy trochę jest innego zastosowania... Ale jeśli te wartości się nie zmieniają, to ustawienie ich jest najlepszym rozwiązaniem. Natomiast jeśli są zmienne to można chyba użyć obserwatora, ale to jeśli jest potrzeba reakcji na zmianę...

W sumie to coś mi się wydaje, że można by było te wartości przekazać tamtemu budowanemu obiektowi, ale musiał bym się wczytać.

(I jak już wiele razy pisałem, nie przedstawiajcie swoich rozwiązań, przemyśleń, a to co macie zrobić. Mówię tak bo to problem jest do rozwiązania, a wielokrotnie już się zdarzało, że autor proponując rozwiązanie nie przedstawił tego dobrze. Tak więc piszcie co jest problemem, a potem co najwyżej swoją propozycję, bo jak nie wiemy co dokładnie mamy rozwiązać, ciężko coś doradzić. Tak jak czy to się zmienia, czy obiekty muszą wiedzieć o zmianie itp. itd, a niże w ogóle inaczej to rozwiązać? Dlatego dobry opis problemu jest tak ważny)
Go to the top of the page
+Quote Post

Posty w temacie
- l0ud   [PHP] Odniesienie się do obiektu przez inny w nim powstały   29.03.2008, 21:27:22
- - Cysiaczek   Nie, ale możesz przekazać referencję obiektu A do ...   29.03.2008, 21:29:01
- - pyro   Cytat(l0ud @ 29.03.2008, 21:27:22 ) W...   29.03.2008, 21:41:40
- - l0ud   Rozumiem, że masz na myśli coś takiego? [PHP] pob...   29.03.2008, 21:51:55
|- - pyro   Cytat(l0ud @ 29.03.2008, 21:51:55 ) R...   29.03.2008, 22:09:33
- - Moli   Możesz dać np. [PHP] pobierz, plaintext <?php$t...   29.03.2008, 22:07:33
- - l0ud   @pyro, nie wiem do czego Twoja odpowiedź się odnos...   29.03.2008, 22:13:53
- - Moli   No to jak dasz [PHP] pobierz, plaintext <?phpc...   29.03.2008, 22:17:58
- - l0ud   @Moli, ale ja chcę się odnieść do konkretnego obie...   29.03.2008, 22:37:49
|- - pyro   Cytat(l0ud @ 29.03.2008, 22:37:49 ) @...   29.03.2008, 23:00:26
- - l0ud   Cytatdziedziczysz tez zmienne i inne dane od rodzi...   29.03.2008, 23:10:12
|- - pyro   Cytat(l0ud @ 30.03.2008, 00:10:12 ) A...   30.03.2008, 11:25:27
- - Kicok   Dlaczego miałoby się nie udać? [PHP] pobierz, plai...   30.03.2008, 11:08:19
- - l0ud   Kicok, dzięki wielkie Twoja odpowiedź na pewno mi ...   30.03.2008, 15:12:14
- - Cysiaczek   Przenoszę na OOP Nie będzie to jakiś antywzorzec,...   30.03.2008, 15:25:17
- - l0ud   Bo za każdym razem przekazujemy wszystko do wszyst...   30.03.2008, 15:53:17
- - Cysiaczek   Pamiętaj, że przechowujesz tylko referencje do obi...   30.03.2008, 15:57:32
- - l0ud   Problemów z kopiami raczej nie będzie, bo klasa je...   30.03.2008, 16:12:48
- - Sedziwoj   Nie wiem dlaczego, ale w trakcie czytania na myśl ...   30.03.2008, 17:06:39


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: 5.10.2025 - 04:54