微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用PHP代码实现简单的工厂模式

PHP代码实现简单的工厂模式方法

1、定义抽象基类

//家禽类
abstract class Fowl
{
	abstract public function eat();//吃方法
}

2、定义子类

//牛类
class Cattle extends Fowl
{
	public function eat()
	{
		echo 我是牛,我吃草;
	}
}
//鸭类
class Duck extends Fowl
{
	public function eat()
	{
		echo 我是鸭,我吃鱼;
	}
}
//羊类
class Sheep extends Fowl
{
	public function eat()
	{
		echo 我是羊,我吃草;
	}
}

3、工厂类

//工厂类
class Factory
{
	public static function create($fowlName)
	{
		switch ($fowlName) {
			case 'Cattle':
				return new Cattle();
				break;
			case 'Duck':
				return new Duck();
				break;
			case 'Sheep':
				return new Sheep();
				break;
		}
	}
}

4、客户端

$cattle = Factory::create('Cattle');
$cattle->eat();//我是牛,我吃草

$duck = Factory::create('Duck');
$duck->eat();//我是鸭,我吃鱼

$sheep = Factory::create('Sheep');
$sheep->eat();//我是羊,我吃草

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐