Autor | Zpráva | ||
---|---|---|---|
midlan Profil |
#1 · Zasláno: 6. 2. 2013, 17:37:13
Ahoj,
zjistil jsem, že od PHP 5.4 přibyla k sessions funkce session_status() , která vrací konstanty PHP_SESSION_* . Chtěl jsem si přidat podporu i pro PHP 5.3, tak jsem napsal jednoduchou funkci:
if(!function_exists('session_status')) { define('PHP_SESSION_DISABLED', 0); define('PHP_SESSION_NONE', 1); define('PHP_SESSION_ACTIVE', 2); function session_status() { return isset($_SESSION) ? PHP_SESSION_ACTIVE : PHP_SESSION_NONE; } } PHP_SESSION_DISABLED . V PHP 5.4 jsem provedl několik testů, ale PHP_SESSION_DISABLED mi nikdy session_status() nevrátila.
|
||
DJ Miky Profil |
#2 · Zasláno: 6. 2. 2013, 18:24:38
Podle manuálu:
PHP_SESSION_DISABLED if sessions are disabled. = PHP bylo zkompilované bez podpory sessions (volba --disable-session). Ve standardní distribuci jsou sessions součástí PHP, takže pokud si PHP nekompiluješ sám a výslovně sessions nezakážeš, nikdy se s touto hodnotou nesetkáš. Co se týče emulace v PHP < 5.4, tak by snad mělo jít testovat něco jako if(!function_exists('session_start')) return PHP_SESSION_DISABLED; |
||
midlan Profil |
#3 · Zasláno: 7. 2. 2013, 02:26:38
DJ Miky:
Díky za vysvětlení. Já jsem zkoušel hledat jak sessions zakázat, abych pak otestoval návratovou hodnotu na PHP_SESSION_DISABLED , ale nic jsem nenašel a myslel si, že když sessions nepůjdou někde zakázat, tak ta hodnota nenastane.
|
||
Časová prodleva: 11 let
|
0