php单例模式入门例子

发布时间:2020-06-16编辑:脚本学堂
在php各种设计模式中,php单例模式算是最简单,也是用处最多的一种设计模式,本节举了一个php单例模式的例子,供学习参考。

单例模式
主要用于数据库的连接,确保数据库一个类只有一个实例,并且向整个系统提供这个实例。
避免new操作消耗资源,同时避免数据库出现too many connection信息.

要点:
1、必须只有一个实例。
2、必须自动创建这个实例。
3、必须向整个系统提供这个实例。

例子:
 

复制代码 代码示例:
<?
class mysql{
   privete static $instance ;//保存实例
   //构造函数声明为private, 防止直接创建对象
   privete function __construct(){
   // 实例化
    }
    //单例方法, 判断是否已经实例化,只实例化一次
    public static function getInstance (){
   if(!isset( self::$instance )){
 self ::$instance = new self();
   }
   return self:: $instance;
    }
    //防止克隆对象
    private function __clone (){
       trigger_error ("not allow to clone.");
    }
    function test(){
       echo "test" ;
    }
}
$conn = mysql::getInstance ();
$conn->test ();
?>