php单例模式示例分享
单例模式主要使用于数据库的连接,确保数据库一个类只有一个实例,并且向整个系统提供这个实例。从而避免new操作消耗资源,同时避免数据库出现toomanyconnection信息.
要点有三个:1.必须只有一个实例。2.必须自动创建这个实例。3.必须向整个系统提供这个实例。
<? classmysql{ privetestatic$instance;//保存实例 //构造函数声明为private,防止直接创建对象 privetefunction__construct(){ //实例化 } //单例方法,判断是否已经实例化,只实例化一次 publicstaticfunctiongetInstance(){ if(!isset(self::$instance)){ self::$instance=newself(); } returnself::$instance; } //防止克隆对象 privatefunction__clone(){ trigger_error("notallowtoclone."); } functiontest(){ echo"test"; } } $conn=mysql::getInstance(); $conn->test(); ?>