我有最后的静态方法 “的getInstance()” 单例类:PHP 5.3抽象单身班和儿童?
<?php
abstract class Singleton
{
protected static $instances;
final public static function getInstance()
{
$class = get_called_class();
if(!isset(static::$instances[$class]))
static::$instances[$class] = new $class();
return static::$instances[$class];
}
}
而且这样的代码:
<?php
class C1 extends Singleton { }
class C2 extends Singleton { }
C1::getInstance(); // Created C1 class
C2::getInstance(); // Still get C1 class, get_called_class() return C1 when i try get C2
什么我做错了什么?
您使用的一个开始:) – GordonM 2012-01-18 08:58:38
单身[看起来工作得很好(http://codepad.viper-7.com/BlBDGC)。 – cmbuckley 2012-01-18 09:20:01