PHP最常用的2种设计模式工厂模式和单例模式介绍
2015-01-24信息快讯网
当你在不断的试图从你的应用程序中发现新的特征时,你是否发现你提出的解决方法和一些以前你已经实现的东西是如此的类似呢
1.工厂模式主要作用是降低耦合度。
abstract class Operation{
abstract public function getValue($num1,$num2);
public function getAttr(){
return 1;
}
}
class Add extends Operation{
public function getValue($num1, $num2){
return $num1+$num2;
}
}
class Sub extends Operation{
public function getValue($num1, $num2){
return $num1-$num2;
}
}
class Factory{
public static function CreateObj($operation){
switch ($operation){
case '+': return new Add();
case '-': return new Sub();
}
}
}
$Op=Factory::CreateObj('-');
echo $Op->getValue(3, 6);
用在真正开发中一般当做数据库选择类。
2单例模式
单例是因为一个就足够了,多了浪费。比如邮局里的电话簿只有一本,有需要的人拿来看,没有必要每个人要查的时候工作人员就拿一本出来,看完了再回收。
class Mysql{
public static $conn;
public static function getInstance(){
if (!self::$conn){
new self();
return self::$conn;
}else {
return self::$conn;
}
}
private function __construct(){
self::$conn= "mysql_connect:";// mysql_connect('','','')
}
public function __clone()
{
trigger_error("Only one connection");
}
}
echo Mysql::getInstance();
echo Mysql::getInstance();
实际中用作数据库连接类和工厂模式一起使用,根据参数调用单例模式,可以提高资源使用效率。
解析php中的fopen()函数用打开文件模式说明
解析PHP中的正则表达式以及模式匹配
解析PHP工厂模式的好处
PHP设计模式之调解者模式的深入解析
PHP设计模式之迭代器模式的深入解析
鸡肋的PHP单例模式应用详解
基于php设计模式中单例模式的应用分析
基于php设计模式中工厂模式详细介绍
php单例模式实现(对象只被创建一次)
PHP中“简单工厂模式”实例代码讲解
PHP缓存技术的多种方法小结
php调用dll的实例操作动画与代码分享
Zend Framework中的简单工厂模式 图文
工厂模式在Zend Framework中应用介绍
php中使用接口实现工厂设计模式的代码
分享一个PHP数据流应用的简单例子
PHP设计模式之装饰者模式
PHP 设计模式之观察者模式介绍
PHP高级对象构建 工厂模式的使用
php设计模式 Factory(工厂模式)
php设计模式 Singleton(单例模式)