猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
PHP的单态设计模式?
对php单态设计模式不怎么理解,能用通俗的例子讲解讲解吗? 谢谢!
森林海
浏览 702
回答 1
1回答
米琪卡哇伊
对于java转过来程序员说是单态设计模式,在PHP上通常说是单例模式,说法不一样,手册上也有介绍:单例模式(Singleton)用于为一个类生成一个唯一的对象。最常用的地方是数据库连接。 使用单例模式生成一个对象后,该对象可以被其它众多对象所使用。<?phpclass Example{// 保存类实例在此属性中private static $instance;// 构造方法声明为private,防止直接创建对象private function __construct(){echo 'I am constructed';}// singleton 方法public static function singleton(){if (!isset(self::$instance)) {$c = __CLASS__;self::$instance = new $c;}return self::$instance;}// Example类中的普通方法public function bark(){echo 'Woof!';}// 阻止用户复制对象实例public function __clone(){trigger_error('Clone is not allowed.', E_USER_ERROR);}}?>这样我们可以得到一个独一无二的Example类的对象。<?php// 这个写法会出错,因为构造方法被声明为private$test = new Example;// 下面将得到Example类的单例对象$test = Example::singleton();$test->bark();// 复制对象将导致一个E_USER_ERROR.$test_clone = clone $test;?>
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
设计模式
关于qt编程问题?
1 回答
请问视觉设计师如何提升自身的能力?
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续