php单例设计方法
php设计模式之单例模式用法经典示例分析本文实例讲述了php设计模式之单例模式用法。分享给大家供大家参考,具体如下:
|
<?php /** * @desc 单例模式 * 目的:防止过多的new对象和clone对象,没有对象的时候new对象并缓存,始终保持都是同一个对象实例 * 特点:php的单例是进程中的单例,而不像java属于内存中的单例 * **/ class single{ protected static $ins = null; //声明一个静态变量,用来存储类的实例 private $name ; //声明一个私有的实例变量 /** * 私有化构造方法,防止不断的创建对象 * **/ private function __construct(){ } public static function getIns(){ if (self:: $ins ===null){ self:: $ins = new self(); } return self:: $ins ; } public function setName( $name ){ $this ->name = $name ; } public function getName(){ return $this ->name; } } $single1 = single::getIns(); $single2 = single::getIns(); $single1 ->setName( 'hello world!' ); $single2 ->setName( 'hello php!' ); echo $single1 ->getName(); //输出结果:hello php! echo "<br/>" : echo $single2 ->getName(); //输出结果:hello php! /*** * 分析:输出的结果都是hello php! * 采用了单例模式对象$single1与$single2是等价的,因此对象$single1与$single2都在设置类的变量时指向都是一致的,变量值取对象设置的最新的一个值 * **/ |
运行结果:
hello php!
hello php!
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/lisqiong/p/6552815.html