class CConfig
{
private $_file = "";
private $_time = "";
static $list = array();
public function __construct($file)
{
if(array_key_exists($file, self::$list)) {
var_dump(self::$list[$file]);
return self::$list[$file];
} else {
$this->_time = microtime();
self::$list[$file] = $this;
return $this;
}
}
}
$x = new CConfig("_index.php");
var_dump($x);
echo "<br/>";
$x = new CConfig("_index.php");
echo "<br/>";
var_dump($x);
ожидаемый результат:
object(CConfig)#1 (2) { ["_file":"CConfig":private]=> string(0) "" ["_time":"CConfig":private]=> string(21) "0.94009600 1389819843" }
object(CConfig)#1 (2) { ["_file":"CConfig":private]=> string(0) "" ["_time":"CConfig":private]=> string(21) "0.94009600 1389819843" }
object(CConfig)#1 (2) { ["_file":"CConfig":private]=> string(0) "" ["_time":"CConfig":private]=> string(21) "0.94009600 1389819843" }
Реальный результат:
object(CConfig)#1 (2) { ["_file":"CConfig":private]=> string(0) "" ["_time":"CConfig":private]=> string(21) "0.94009600 1389819843" }
object(CConfig)#1 (2) { ["_file":"CConfig":private]=> string(0) "" ["_time":"CConfig":private]=> string(21) "0.94009600 1389819843" }
object(CConfig)#2 (2) { ["_file":"CConfig":private]=> string(0) "" ["_time":"CConfig":private]=> string(0) "" }
Где потерялось значение _time или что я упустил?