Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak sprawdzić nazwę instancji jeszcze w klasie, jaką reprezentuje ? ; )
iksigrek
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.08.2009

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


Jak najprościej sprawdzić nazwę instancji danej klasy bez dodawania żadnych parametrów podczas jej tworzenia, czy później.

class modul{

function nazwa_instancji() {
return [tu niech bedzie 'modul_a', albo 'modul_b', itp...];
}

}

$modul_a = new modul();
$modul_b = new modul();
$modul_c = new modul();

Potrzebna jest mi w mechanizmie klasy informacja jaki modul wykonuje obecnie jakieś działanie...

Ten post edytował iksigrek 16.09.2010, 22:58:17
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%)
-----


Cytat
Na dobrą sprawę to tylko potwierdzenie tego, że to głupi pomysł. Ktoś tam słusznie zauważył, że w przypadku, gdy więcej zmiennych wskazuje na ten sam obiekt będzie problem z ustaleniem nazwy:
  1. <?php
  2.  
  3. $obj = new MyObject();
  4. $a1 =& $obj;
  5. $a2 =& $obj;
  6. $a3 =& $a1;
  7.  
  8. echo $obj->getName(); // Co ma zwrócić? obj, a1, a2, a3? A może tablicę wszystkich?
Co więcej sposób, który miał niby rozwiązywać problem nie robi tego:
  1. <?php
  2.  
  3. class TestClass {
  4. public $setMe;
  5. public $abc = 'def';
  6. }
  7.  
  8. $a = new TestClass();
  9. $b = new TestClass();
  10.  
  11. echo serialize($a) . PHP_EOL;
  12. echo serialize($b) . PHP_EOL;
Zserializowane obiekty będą identyczne => będą miały ten sam hash => nie będą rozróżnialne.
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: 8.10.2025 - 17:45