|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2012-07-17 09:56 UTC] ab@php.net
-Status: Open
+Status: Feedback
[2012-07-17 09:56 UTC] ab@php.net
[2012-07-19 15:19 UTC] ab@php.net
-Status: Feedback
+Status: Verified
[2012-07-19 15:19 UTC] ab@php.net
[2012-07-19 17:41 UTC] rasmus@php.net
[2012-07-19 17:41 UTC] rasmus@php.net
-Status: Verified
+Status: Duplicate
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Nov 03 11:00:02 2025 UTC |
Description: ------------ With APC, after the script has been cached i.e. after 1 second from the first hit without modifying or restarting apache, the script causes an error on the $c = new C;" line it seems that APC loses all the names data because i originally ran into this bug for trying to access self::CONST_NAME in an previously existing instance, then i found out that not only it loses the class constants, but the class names as well. Test script: --------------- <?php function sess_open($savePath, $sessionName) { return true; } function sess_close() { return true; } function sess_read($sessionId) { return ""; } function sess_write($sessionId, $data) { $c = new C; $c->m(); return true; } function sess_destroy($sessionId) { return true; } function sess_gc($lifetime) { return true; } session_set_save_handler("sess_open", "sess_close", "sess_read", "sess_write", "sess_destroy", "sess_gc"); session_start(); class C { public function m() { print "ok\n"; } } print "finish\n"; Expected result: ---------------- finish ok Actual result: -------------- finish Fatal error: Class 'C' not found in (omitted) on line 13