qbba
14.10.2003, 21:36:27
witam

,
Zauwazylem ze jesli w destruktorze znajdzie sie cos takiego:
[php:1:a96b09808b]<?php
class blabla
{
...
function __destruct()
{
$GLOBALS['smarty'] -> display('test.tpl');
}
...
}
?>[/php:1:a96b09808b]
Apache za kazdym razem sie wywala. W logach jest cos takiego:
Kod
...
[Tue Oct 14 22:32:50 2003] [notice] Parent: child process exited with status 3221225477 -- Restarting.
[Tue Oct 14 22:32:57 2003] [notice] Parent: Created child process 3888
[Tue Oct 14 22:33:00 2003] [notice] Child 3888: Child process is running
[Tue Oct 14 22:33:00 2003] [notice] Child 3888: Acquired the start mutex.
[Tue Oct 14 22:33:00 2003] [notice] Child 3888: Starting 250 worker threads.
...
Uzywam php5.0.0b2-dev(jako mdul servera) + apache 2.0.47
Pomóżcie :PPP
scanner
15.10.2003, 08:19:45
To co pokazales, to nie jest błąd.
jakiego systemu używasz? Jeśli Win200/XP to sprawdź co jest w "Dzienniku zdarzeń"
qbba
15.10.2003, 14:55:09
ze tez nie spojrzalem

(win xp pro)
Kod
Aplikacja powodująca błąd Apache.exe, wersja 2.0.47.0, moduł powodujący błąd php4ts.dll, wersja 5.0.0.0, adres błędu 0x000f295c.
Sciagne najnowszego snapsa php moze bedzie oka
PS Dzięki
qbba
15.10.2003, 19:50:45
uuuuuu sciągnołem i niestety nic to samo (może kod jest wadliwy czy co??) powiedzcie mi czy to jest prawidłowe ?[php:1:81973a302d]
<?php
class blabla
{
...
function __destruct()
{
$GLOBALS['smarty'] -> display('test.tpl');
}
...
}
?>[/php:1:81973a302d]
Seth
15.10.2003, 20:56:58
hmmm... moze chodzi o to, ze chcesz uruchomic dodatkowy "proces" gdy juz ten, w ktorym dzialasz jest usuwany :/
qbba
15.10.2003, 21:36:40
chyba do tego sluzy destruktor zeby cos jeszcze uruchomic, dokonczyc.... Chyba ze Cie zle interpretuje. Moze wazne jest miejsce umieszczenia destruktora?
Destruktor mam wrzucony zaraz po konstruktorze.
FiDO
15.10.2003, 22:06:13
Sprobuj tak:
[php:1:f328fb82eb]
class blabla
{
var $test;
function __construct(&$t)
{
$this->test = &$t;
}
function __destruct()
{
echo "blabla::__destruct();<br/ >";
//$GLOBALS['test']->dosth();
$this->test->dosth();
}
}
$test = new test;
$obj = new blabla($test);
[/php:1:f328fb82eb]
qbba
16.10.2003, 20:09:10
Dzięki działa... swoją drogą ciekawa sprawa, jeśli uzyje się zmiennych superglobalnych w destruktorze za kazdym razem wywala mi sie apache...(mam zainstalowane jako modul serwera), zobaczcie u siebie jak to dziala.
FiDO
16.10.2003, 20:54:28
Ja sprawdzalem i dzieje sie to o czym piszesz, wiec poszukalem workaround'a
qbba
16.10.2003, 21:02:39
jak znajdziesz daj znac... swoja droga ciekawe czemu tak sie dzieje

P
FiDO
16.10.2003, 21:17:17
No przeciez znalazlem

i napisalem go wyzej...
qbba
16.10.2003, 21:55:38
:oops: :oops: :oops: yyyy sorka.... nieprzeczytalem do konca jeszcze raz dzieki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.