Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> uruchomienie obiektu z innego obiektu
kicaj
post
Post #1





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Czy jest mozliwe uruchomienie obiektu tylko kiedy jest on w innym obiekcie?
Przyklad
  1. <?php
  2. class One
  3. {
  4. function __construct()
  5. {
  6. $objName2 = new Two;
  7. }
  8. }
  9.  
  10. class Two
  11. {
  12. // sprawdzenie czy jestesmy w obiekcie Klasa1
  13. }
  14.  
  15. // uruchamiamy klase 'One' i 'Two';
  16. $objName1 = new One;
  17.  
  18. // dostajemy jakis error przy uruchamianiu klasy 'Two'
  19. $objName3 = new Two;
  20. ?>


Jest cos takiego mozliwe. Poprostu niechce zeby dana klasa byla uruchamiana gdziekolwiek, ale tylko w konkretnej klasie...


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post
UDAT
post
Post #2





Grupa: Zarejestrowani
Postów: 442
Pomógł: 0
Dołączył: 27.12.2005

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


Dodaj sprawdzanie wartości debug_backtrace" title="Zobacz w manualu PHP" target="_manual i rzucaj wyjątek.
Go to the top of the page
+Quote Post
kicaj
post
Post #3





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Nie zabardzo wiem co z ta funkcja zrobic:/

Edit: Juz wiem, dzieki:)
Dla pozostalych pokaze:
  1. <?php
  2. class One
  3. {
  4. function __construct()
  5.  {
  6. echo "One <br />";
  7.  
  8. $arr = debug_backtrace();
  9.  
  10. if( !isset( $arr[1]['class'] ) )
  11. {
  12. echo "Nie masz dostepu";
  13. }
  14. else
  15. {
  16. echo "Masz dostep";
  17. }
  18. }
  19.  
  20. }
  21.  
  22. class Two
  23. {
  24. function __construct()
  25. {
  26. echo "Two > ";
  27.  
  28. $a = new One;
  29. }
  30.  
  31. }
  32.  
  33. $a = new One; //powinien zwrocic blad, bo niejest uruchomiony z wewnatrz innego obiektu
  34. echo '<hr />';
  35. $b = new Two; //uruchamia obiekt TWO wraz z obiektem ONE
  36. ?>


Ten post edytował kicaj 16.08.2007, 16:06:23


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 10:56