Zjisteni vsech session namespaces

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
hurvajs
Člen | 86
+
0
-

Jde nejak normale zjistit, jake namespace jdou definovany? Podotykam, ze nevim jake jsou ulozeny. Nektere jsou vzdy, nektere jsou v zavisloti napr. na modulu nebo filtru dat. Nikde jsem nenasel moznost zistat seznam aktivnich namespaces. A pristupovat primo k $_SESSION se mi moc nechce. Nevite nekdo o nejakem zpusobu? Diky

Filip Procházka
Moderator | 4668
+
0
-

napadlo mě

$ns = Environment::getSession()->getIterator();

vrací to iterator nad všema namespaces, ale netestoval jsem co z toho leze :) HF
mělo by to fungovat takhle:

foreach($ns AS $namespace => $variables){  }
hurvajs
Člen | 86
+
0
-

HosipLan napsal(a):

foreach($ns AS $namespace => $variables){  }

Ano, tohle jde s tim, ze jmeno namespace je ulozeno v $variables misto v $namespace. Nicmene se mi sessiony chovaji divne, nemohu si pomoct. Dam napriklad, ze ma exporivat za 10 sekund, pockam 1 minutu a nic. Session se tvari jako by nic… :-(

Petr Motejlek
Člen | 293
+
0
-

To je dané tím, jakým způsobem PHP řeší tu expiraci. Je nějaká pravděpodobnost, která se nastavuje v php.ini, se kterou se spustí clear nad session daty a smaže ta vyexpirovaná.

_Martin_
Generous Backer | 679
+
0
-

Petr Motejlek napsal(a):

To je dané tím, jakým způsobem PHP řeší tu expiraci. Je nějaká pravděpodobnost, která se nastavuje v php.ini, se kterou se spustí clear nad session daty a smaže ta vyexpirovaná.

Pokud používá Nettí objekt pro práci se session, tak ty si expiraci nastavují do metadat a porovnávají si ho samy – takže jsou na jakémkoliv mechanizmu PHP nezávislé.