首页 > Web开发 > 详细

php设计模式之工厂模式

时间:2016-04-15 00:00:03      阅读:347      评论:0      收藏:0      [点我收藏+]

工厂模式:提供某个对象的心的实例的一个接口,同时使调用代码避免确定实际实例化基类的步骤。

 

/**
* 工厂模式
*/
class CDFactory
{
    
    public static function create($type)
    {
        $class = strtolower($type)."CD";
        return new $class;
    }
}

 

/**
* 基本CD类
*/
class standardCD
{
    
    public function addSongs($songs)
    {
        # code...
    }
}

/**
* 增强型CD类
*/
class enhancedCD
{
    public function __construct()
    {
        $this->tracks[] = ‘DATA TRACK‘;
    }
    
    public function addSongs($songs)
    {
        # code...
    }
}

 

 

需要新的新建一个类即可,工厂模式完全不用动,即使功能需求有改变只需要改变对应的类就可以,这里和委托模式区别。

/**
 * 使用方法
 */
$type = ‘standard‘;

$cd = CDFactory::create($type);//  new standerdCD()
$cd->setBand($band);
$cd->setTitle($tltle);

 

php设计模式之工厂模式

原文:http://www.cnblogs.com/happig/p/5393422.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!