|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2010-08-25 10:12 UTC] rasmus@php.net
[2010-08-25 10:17 UTC] odoucet@php.net
[2010-08-25 10:21 UTC] rasmus@php.net
[2016-11-18 21:51 UTC] kalle@php.net
-Status: Analyzed
+Status: Wont fix
[2016-11-18 21:51 UTC] kalle@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 17:00:01 2025 UTC |
Description: ------------ I do not have the same behaviour with or without APC enabled, when handling php shutdown, especially session_set_save_handler. This only happen when using FastCGI of course :) Maybe it happens with PHP as a module, I did not test it. First time the script is executed : no error. Second time (and third, ...) : error happened. For helping you reproduce the bug, here are the command lines used with cgi-fcgi : $ cgi-fcgi -start -connect test.sock /usr/bin/php-cgi Then, call the following command line several times : $ SCRIPT_FILENAME=bugapc.php cgi-fcgi -connect test.sock /usr/bin/php-cgi Reproduce code: --------------- <?php class MyTest { public function __construct() { } public function open () { } public function close () { echo __FUNCTION__;} public function read () { } public function write () { echo __FUNCTION__;} public function destroy () { } public function gc () { } } session_set_save_handler( array('MyTest', 'open'), array('MyTest', 'close'), array('MyTest', 'read'), array('MyTest', 'write'), array('MyTest', 'destroy'), array('MyTest', 'gc') ); session_start(); Expected result: ---------------- First launch (no error) : ========== writeclose ========== Actual result: -------------- First launch is expected result. Then : ========== Fatal error: Class 'MyTest' not found in Unknown on line 0 Fatal error: Class 'MyTest' not found in Unknown on line 0 ========== => Error happened when php called MyTest::write() and MyTest::close() internally.