Edit report at https://bugs.php.net/bug.php?id=61066&edit=1
ID: 61066 Comment by: daniel dot beardsley at gmail dot com Reported by: arni at tsumi dot ru Summary: clones an object if using unserialize,spl_autoload_register Status: Open Type: Feature/Change Request Package: SPL related Operating System: FreeBSD PHP Version: 5.3.10 Block user comment: N Private report: N New Comment: It's pretty difficult to understand this without a reproducable testcase, but it sounds very similar to this bug: https://bugs.php.net/bug.php?id=62836 Previous Comments: ------------------------------------------------------------------------ [2012-02-12 22:37:21] arni at tsumi dot ru Description: ------------ clones an object if using unserialize,spl_autoload_register. This confuses the understanding of. Test script: --------------- spl_autoload_register(function($Class){ /* Include file */ }); /* File Core.php */ class Core{ public $field; public function __construct(){ $this->field = time(); } } /* File Lite.php */ class Lite{ protected $Core; public function __construct($Core){ $this->Core = $Core; } } $Core = new Core(); if(!$Lite = $Cache->Load('Lite')){ $Lite = new Lite(); // Ok ... } echo $Core->field; // Ok ... echo $Lite->Core->field; // Out null. $Core != $Core. $Core new object. Expected result: ---------------- if($Core->field == $Lite->Core->field){ echo 'Ok!'; }else{ echo 'poorly'; } Actual result: -------------- $Core->field != $Lite->Core->field ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=61066&edit=1