生成对象,而不是在代码中直接new 对象,当类参数或者名称发生变化时,只需要修改工厂就可以,符合开放封闭原则,和单例模式进行结合
请先参考单例模式: http://blog.youkuaiyun.com/buyingfei8888/article/details/20949291
<?php
namespace shejimoshi;
include "./php09_single.php";
class factory{
private static $obj_db;
public function createdb(){
if(!self::$obj_db){
self::$obj_db = \Single\Single::getInstance();
}
return self::$obj_db;
}
}
$fac = \shejimoshi\factory::createdb();
var_dump($fac);
?>运行结果:
本文通过实例展示了如何使用工厂模式结合单例模式来生成对象,从而实现类参数或名称变化时只需修改工厂的功能,遵循开放封闭原则,并与单例模式相结合提升代码复用性和灵活性。
6694

被折叠的 条评论
为什么被折叠?



