简单的单例模式

来源:互联网 发布:土耳其进行曲 知乎 编辑:程序博客网 时间:2024/05/16 08:29

单例模式:

一个类在整个应用中,只有一个对象实例的设计模式

类必须自行创建这个实例

必须自行向整个系统提供这个实例

三私:私有静态成员变量、构造函数、克隆函数

一公:公共的静态方法

<?php//单例模式class db{    static private $_instance;    static private $_connectSource;    private $_dbConfig=array(        'host'=>'127.0.0.1',        'user'=>'root',        'password'=>'root',        'database'=>'lol',    );    private function __construct()    {            }    static public function getInstance(){        if(!(self::$_instance instanceof self)){            self::$_instance= new self();        }        return self::$_instance;    }    //php连接数据库    public function connect(){        if(!self::$_connectSource){            self::$_connectSource=mysql_connect($this->_dbConfig['host'],$this->_dbConfig['user'],$this->_dbConfig['password']);            if(!self::$_connectSource){                //连接失败返回错误信息                die('mysql connect error'.mysql_error);            }            //选择一个数据库            mysql_select_db($this->_dbConfig['database'],self::$_connectSource);            //设置字符集            mysql_query("set names UTF8",self::$_connectSource);        }        return self::$_connectSource;    }}//单例必须实例化它入口$connect=Db::getInstance()->connect();$sql="select * from car";$result=mysql_query($sql,$connect);//结果集行数$arr=mysql_num_rows($result);echo $arr;//var_dump($connect);//返回资源resource(3) of type (mysql link)

原创粉丝点击