单例模式( 三私一公 )
单例模式( 三私一公 )
单例模式( 三私一公 )
单例模式( 三私一公 )
- 私有的构造方法( 防止类被多次实例化 )
- 私有的克隆方法( 防止类被多次克隆 )
- 私有的静态属性( 保存类的实例 )
- 公有的静态方法( 访问这个类 )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
class singleton { private static $ins = null;
public static function getIns() { if (self::$ins == null) { self::$ins = new self(); } return self::$ins; }
private function __construct() { }
private function __clone() { } }
$s1 = singleton::getIns(); $s2 = singleton::getIns(); if ($s1 === $s2) { echo "是一个对象"; } else { echo "不是一个对象"; }
|