摘要: login_time = $time; } } // 装饰器 class LogDecorate extends Component { private $user; private $time; /** * Log constructor. */ public function __construct(User $user) ... 阅读全文
posted @ 2017-05-07 20:40 rorshach 阅读(376) 评论(0) 推荐(0)
摘要: /* 适配器模式 将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间 常见的如类代码升级 */ // 旧类 class User { private $user_name; public function __construct($user_name) { $this->user_name = $user_nam... 阅读全文
posted @ 2017-05-07 19:17 rorshach 阅读(274) 评论(0) 推荐(0)
摘要: observer_list)) { $this->observer_list[] = $observer; } } // 向观察者发送消息,告诉它主题有改变 public function notify() { if(!empty($this->observer_list)) { f... 阅读全文
posted @ 2017-05-07 18:51 rorshach 阅读(173) 评论(0) 推荐(0)
摘要: 工厂模式:在提供的一个静态方法中,根据该方法的参数来初始化类,这些类都有共同的方法,来供调用. 阅读全文
posted @ 2017-05-07 17:41 rorshach 阅读(153) 评论(0) 推荐(0)
摘要: 单例模式:优点:在运行期间,只能得到一个类的实例.防止重复的开销.设计思路:1.设置一个静态变量2.私有化构造方法3.提供一个静态方法,在静态方法中判断静态变量是否有初始化为该类实例,如果有,返回,没有,初始化 其实一些函数中也可以借用这种思想 在程序运行期间,调用该方法,比如获取$uid为10的用 阅读全文
posted @ 2017-05-07 17:30 rorshach 阅读(119) 评论(0) 推荐(0)
摘要: php编码标准 类:1.类名用大驼峰命名法,如FooTest,文件名用小写.class.php,如footest.class.php,,大括号独立成行2.类中方法用小驼峰,如testFunction(),大括号独立成行3.类中属性4.类中属性变量用小写,多个单词用_分割5.暴露给用户的,如控制器类中 阅读全文
posted @ 2017-05-07 17:06 rorshach 阅读(246) 评论(0) 推荐(0)