Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wywołanie destruktora
Neotion
post
Post #1





Grupa: Zarejestrowani
Postów: 67
Pomógł: 0
Dołączył: 13.09.2004

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


Dawno nic nie pisałem, miałem uraz ale mam nadzieję że mi pomożecie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Skrypt kończy swoje działanie (jestem pewien co do wykonania ostatniej linijki, dałem tam sobie echo END) i po tym nie ma już nic, podczas gdy jakby po zakończeniu tego wszytskiego jest wywoływany destruktor klasy config (wyala mi komunika o błędzie którego nie ma). Nie innej tyko tej właśnie choć są wywołane instancje innych klas.

Dzieje się to w wielu wersjach PHP5.

Ma ktoś może pojęcie co się dzieje?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
DeyV
post
Post #2





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




destruktor uruchamiany jest w momencie niszczenia obiektu (czyli usuwania go z pamieci) Dzeje się tak w przypadku wykorzystania unset( zmienna )

Jeśli jednak nie wywołasz unset na wszystkich wykorzystywanych obiektach, to zostanie on "zniszczony" już po zakończeniu działania skryptu.

Co ciekawe - destruktory w php5.0 uruchamiane są naprawdę na samym końcu. Nawet po zamknięciu mechanizmów odpowiedzialnych za sesje.
W PHP5.1 dokonywano tu jakichś zmian, i nie wiem, jak to teraz wygląda.
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: 27.12.2025 - 20:05