![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 288 Pomógł: 12 Dołączył: 2.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam 2 pytania:
1) Co daje unset. Wiem, że dzięki temu zwalnia się pamięć, ale np. czy coś mi to da, jeżeli pod koniec wykonywania skryptu dołącze coś takiego:
I czy pozostawione zmienne, np. $db_password można jakoś odczytać, itd. z pliku .php, czy nie muszę się martwić o wyjście zmiennych. 2) Hmm, ilość zapytań do bazy danych. Istnieje coś takiego na forach np. phpbb, ze wyswietla ilosc zapytan do bazy danych. No ok, ale jak to jest liczone? bo jak jest np. 30 zapytan gora na takim forum, to nie wiem ile jest np. w moim cms-ie. (IMG:http://forum.php.pl/style_emoticons/default/ohmy.gif) Hmm, dajmy na to, ze jest taki skrypt:
No wiec odnosnie tego mam takie jedno big pytanie. Skoro dla kazdego newsa wykonuje zapytanie o autora, tzn. ze jezeli mam 100 newsów to wykonuję dodatkowych 100 zapytan? Czyli powinienem miec wyswietlone 1xx zapytan do sql? A moze mozna jakos inaczej rozwiazac pobieranie autora przez jakies zaawansowane zapytanie do sql? Kod pisany od reki, ale mam nadzieje, ze rozumiecie o co chodzi;d Dziękuję z góry za odpowiedzi:) Ten post edytował tommy4 10.07.2006, 07:44:03 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%) ![]() ![]() |
Co do unset:
teraz we wszystkich nowoczesnych jezykach progrogramowania wysokiego stopnia, jest takie cos jak "Garbage Collector", jet to odpowirdzialne za zwalnianie pamieci w miare mozliwosci, nie bede sie rozpisywal za bardzo ale streszcze ci co sie dzieje w php: W php kazda zmienna,obiekt ma tykie cos jak ilosc powiazan (reference count), co znaczy "ile zeczy jest zalezne od tej zmiennej/objektu", jak ten refference count staje sie rowny = 0 to zmienna / object jest automatycznie zwalnianie z pamieci, i niema podszeby robienia unset, bo wychodzi na jedno. Ale tylko jak masz na mysli zwolnic pamiec. Ten post edytował nasty_psycho 10.07.2006, 10:17:32 |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
W php kazda zmienny,obiekt ma tykie cos jak ilosc powiazan (reference count), co znaczy "ile zeczy jest zalezne od tej zmiennej/objektu", jak ten refference count staje sie rowny = 0 to zmienna / object jest automatycznie zwalnianie z pamieci, (...) Nie prawda.Tak jest w Javie, ale nie w php. W php jak ilośc powiązań jest równ zero to zmienna może być usunięta ale kiedy to nastapi to zależy od "widzimisie" Garbage Collectora. (...) i niema podszeby robienia unset, bo wychodzi na jedno. unset() jest często opowiedzią w sytuacji kiedy chcesz mieć kontrolę nad tym kiedy zaminna m być usunięta. sam o tym decydujesz, więc na pewno nie wychodz na jedno.Na przykład: Jak masz jakieś operacje w destruktorze klasy to za cholerę nie przewidzisz kiedy to się wykona. No chyba że użyjesz unset() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 12:56 |