登录  /  注册

PHP设计模式之简单工厂模式

韦小宝
发布: 2017-11-14 13:54:45
原创
1221人浏览过

定义一个工厂类,简单工厂模式它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态(static)方法,因此简单工厂模式又被称为静态工厂方法(static factory method)模式,它属于类创建型模式。

WF_$UGOHQ%FZ0]3)R9UTG5L.png

/**
 *简单工厂模式
 * */
abstract class userProperties
{
    function getUsername()
    {
    }

    function getGender()
    {
    }

    function getJob()
    {
    }
}

class User extends userProperties
{
    private $username;
    private $gender;
    private $job;

    public function __construct($username, $gender, $job)
    {
        $this->username = $username;
        $this->gender = $gender;
        $this->job = $job;
    }

    public function getUsername()
    {
        return $this->username;
    }

    public function getGender()
    {
        return $this->gender;
    }

    public function getJob()
    {
        return $this->job;
    }
}

class userFactory
{
    public static function createUser($properties = [])
    {
        return new User($properties['username'], $properties['gender'], $properties['job']);
    }
}

$employers = [
    ['username' => 'Jack', 'gender' => 'male', 'job' => 'coder'],
    ['username' => 'Marry', 'gender' => 'female', 'job' => 'designer'],
];
$user = userFactory::createUser($employers[0]);
echo $user->getUsername();
登录后复制

简单工厂模式提供了专门的工厂类用于创建对象,将对象的创建和对象的使用分离开,它作为一种最简单的工厂模式在软件开发中得到了较为广泛的应用

相关推荐:

php简单工厂模式示例 php设计模式入门教程

PHP简单工厂模式、工厂方法模式和抽象工厂模式比较

星际争霸之php简单工厂模式

以上就是PHP设计模式之简单工厂模式的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号