PHP 工厂模式浅析

Posted kg-web

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 工厂模式浅析相关的知识,希望对你有一定的参考价值。


//抽象出一个人的接口
interface Person{
public function showInfo();
}
//继承于人的学生类
class Student implements Person{
public function showInfo()
{
// TODO: Implement showInfo() method.
echo "我是一个学生";
}
}
//继承于人的教师类
class Teacher implements Person{
public function showInfo()
{
// TODO: Implement showInfo() method.
echo "我是一个老师";
}
}
//人类工厂
class PersonFactory{
public static function factory($person_type){
    //传进来的人的类型,首字母大写
$class_name = ucfirst($person_type);
if (class_exists($class_name)){
return new $class_name;
}else{
throw new Exception("类:".$class_name."不存在");
}
}
}
//学生类的实例化
$student = PersonFactory::factory(‘student‘);
$student->showInfo();

































以上是关于PHP 工厂模式浅析的主要内容,如果未能解决你的问题,请参考以下文章

设计模式——工厂模式浅析

浅析设计模式——创建型模式之Abstract-Factory(抽象工厂模式)

浅析设计模式1 —— 工厂模式

浅析设计模式1 —— 工厂模式

浅析设计模式之八 工厂模式

浅析设计模式——创建型模式之simple-factory(简单工厂方法,非设计模式)