作用:保证一个唯一的实例
实际应用:mysq、redis数据库连接等
优点:唯一实例受控访问
<?php
class Singleton
{
protected static $instance;
// 禁止new方式实例化类,只能通过Instance调用
private function __construct()
{
}
public static function Instance()
{
if (! self::$instance) {
self::$instance = new Singleton;
}
return self::$instance;
}
}
$a = Singleton::Instance();
$b = Singleton::Instance();
var_dump($a === $b); //bool(true),无论调用多少次,都是同一个对象