Bug #66615 [Asn]: session_set_save_handler() with object is broken
| From: | yohgaki@php.net | Date: | Fri, 31 Jan 2014 09:28:19 +0000 |
| Subject: | Bug #66615 [Asn]: session_set_save_handler() with object is broken | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-184101@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=66615&edit=1
ID: 66615
Updated by: yohgaki@php.net
Reported by: yohgaki@php.net
Summary: session_set_save_handler() with object is broken
Status: Assigned
Type: Bug
Package: Session related
Operating System: *
PHP Version: Irrelevant
Assigned To: yohgaki
Block user comment: N
Private report: N
New Comment:
It should be fixed to check all required methods are implemented or not.
It should not call simply call old save handler functions essentially when it's a module
provided functions. It does not make sense at all to call module save handler.
Current implementation can use some what like class inheritance, e.g. call previously set save
handler, I don't know users are using this behavior. For example,
session_set_save_handler($myBaseSessionHandler);
session_set_save_handler($myExtenedSessionHandler);
session_start()
Rather than this. User should use class inheritance
class myExtendedSessionHandler extends myBaseSessionHandler {}
Not like inheritance, when nest level is more than 1, ancestor class method is not called.
session_set_save_handler($BaseSessionHandler); // Useless
session_set_save_handler($myBaseSessionHandler);
session_set_save_handler($myExtenedSessionHandler);
session_start()
It's better to remove this behavior. IMO.
Previous Comments:
------------------------------------------------------------------------
[2014-01-31 06:22:11] yohgaki@php.net
Description:
------------
It's simple not working at all since it is calling PS(defult_mod) functions rather than
registered user functions.
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=66615&edit=1