| 
        php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login | 
  [2004-01-01 18:04 UTC] mail at alexanderklein dot de
 Description:
------------
I use the __autoload($sClass) feature, and the $sClass 
names are always transmitted as is. With upper and
lower characters.
But when i cache a class with serialize and try
to unserialize, the $sClass names are only lowercase.
System 1
    System 	Windows NT 5.1
    Build Date 	Jan 1 2004 16:06:44
    Server API 	CGI/FastCGI
    PHP API 	20031224
    PHP Extension 	20020429
    Zend Extension 	90021012
    
System 2
    System 	Linux * 2.4.18 #1 SMP i686
    Build Date 	Dec 23 2003 04:48:50
    Server API 	Apache
    Virtual Directory Support 	disabled
    PHP API 	20031103
    PHP Extension 	20020429
    Zend Extension 	90021012
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits             
             | 
    |||||||||||||||||||||||||||
            
                 
                Copyright © 2001-2025 The PHP GroupAll rights reserved.  | 
        Last updated: Tue Nov 04 05:00:01 2025 UTC | 
A short sample script STEP One: function __autoload($sClass) { echo $sClass."<br>"; } ini_set( 'unserialize_callback_func', '__autoload' ); class myTestWithUpper { public $test; protected function __sleep() { return array('test'); } } file_put_contents( "./test.dat", serialize( new myTestWithUpper() ) ); STEP Two: unserialize( file_get_contents ("./test.dat") );Behavior is correct as you can see below: marcus@zaphod /usr/src/php5 $ php -r 'class FOO{}$o=new FOO;var_dump(serialize($o));' string(14) "O:3:"FOO":0:{}" marcus@zaphod /usr/src/php5 $ php -r '$o=unserialize("O:3:\"FOO\":0:{}");var_dump($o);' object(__PHP_Incomplete_Class)#1 (1) { ["__PHP_Incomplete_Class_Name"]=> string(3) "foo" } marcus@zaphod /usr/src/php5 $ php -r 'class FOO{}$o=unserialize("O:3:\"FOO\":0:{}");var_dump($o);' object(FOO)#1 (0) { }