PHP面向对象-单列模式

WBOY
发布: 2016-06-23 13:32:43
原创
1295 人浏览过

单例模式,在PHP面向对象中应用的比较广泛, 通常为了节省资源,在性能方面上,代码重用性上考虑,使用设计模式是很不错的选择, 比如数据库操作类系统类库等,通常开源代码都会使用单列模式去设计完成,使用单列模式的优点很明显, 可以保证每个类生成实体的唯一性,性能方面有所提高.

<?phpheader ("Content-Type:text/html; charset=utf8");/** * php设计模式 * 三:单列模式 * */class Sigle{    protected static $instanc = null;    protected function __construct(){    }    public static function getInstan(){        if(self::$instanc === null){            self::$instanc = new self;        }        return self::$instanc;    }    private function __clone(){        echo 'conle';    }}$obj1 =  Sigle::getInst();$obj2 = Sigle::getInst();if($obj1 === $obj2){    echo '是一个对象';}else{    echo '不是一个对象';}
登录后复制

解释: 从列子中可以看出,  把构造函数__construct,__clone私有化, 目的是防止new和克隆一个新的对象, 然后开放getInstace这个公共的操作,让其调用保证这个对象的唯一性.




来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!