Edit report at https://bugs.php.net/bug.php?id=60657&edit=1
ID: 60657
Comment by: gedrox at gmail dot com
Reported by: astewart at online-buddies dot com
Summary: APC destroys static class members before sessions
are written
Status: Open
Type: Bug
Package: Session related
Operating System: MacOS X 10.7, CentOS 5.6
PHP Version: 5.3.8
Block user comment: N
Private report: N
New Comment:
This is actual in 5.3.10 as well. Simple code to reproduce (will log fatal
errors about undefined class constant 'logging'):
<?php
$session = new XSession();
session_set_save_handler(array($session, 'open'), array($session, 'close'),
array($session, 'read'), array($session, 'write'), array($session, 'destroy'),
array($session, 'gc'));
session_start();
class XSession {
const logging = false;
function open() {if (self::logging) echo 'OK';}
function write() {if (self::logging) echo 'OK';}
function read() {if (self::logging) echo 'OK';}
function close() {if (self::logging) echo 'OK';}
function destroy() {if (self::logging) echo 'OK';}
function gc() {if (self::logging) echo 'OK';}
}
Previous Comments:
------------------------------------------------------------------------
[2012-01-04 17:25:18] astewart at online-buddies dot com
Description:
------------
Like #59564.
Neither of the workarounds in that work for us: session is compiled in
statically, but APC is a module, so we can't reorder them relative to each
other,
and an append doesn't work, and doesn't work with scripts that call exit()
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=60657&edit=1