工厂模式
定义
一个类通过本身的静态方法来,实例化一个类并返回一个实例对象;
工厂模式特点
- 类命名特点:nameFactory example: class mysqlFactory{} 【这是为了规范,当然也去起其他任意名字】。
- 静态方法名称: public static function factory($class_name){}【静态方法是类与外界的接口, 返回的是一个对象】。
优点
如果已经使用的类内部发生改变,哪不需要在所有的地方都改变,只需要在类工厂类里改变既可,比如:连接数据库,可以使用mysql 、mysqli、pdo,根据不同参数配置使用不同的数据库操作类。
例子
<?php
interface mysql{
public function connect();
}
class pdo1 implements mysql{
public function connect(){
echo 'pdo';
}
}
class mysqli1 implements mysql{
public function connect(){
echo 'mysqli';
}
}
class myFactory{
public static function factory($class_name){
return new $class_name;
}
}
$obj = myFactory::factory('pdo');
$obj->connect();
更多精彩内容,关注下面的微信公众号~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。