我正在创建一个使用 MongoDB 作为数据库的网站,购买我还希望将来能够使用任何其他存储系统,所以我想使用抽象工厂模式的完整实现。通过完整的实现,我指的是:
- “Database_factory”抽象类,客户端代码(控制器)应该使用它来创建工厂对象。
“Mongodb_factory”类,它扩展了 Database_factory 类。
代表一组查询的“客户”抽象类。
- 实现“客户”类的“Mongodb_customers”类。“Mongodb_customers”对象应该由“Mongodb_factory”返回。
我确切地知道如何使用纯 OO PHP 做到这一点。但我不知道如何将它与 CodeIgniter 提供的模型架构合并。
只使用“Customers”抽象类,然后使用“Mongodb_customers”来实现它很容易,但我也想使用工厂。
当你需要 CodeIgniter 中的模型时,你只需使用“$this->load->model('my_model');” 并使用它的功能,但是如何创建一个工厂对象,并使其返回您需要的具体模型,您可以通过接口(抽象类)使用它?
有没有机会实现这一目标?
感谢你们所有人。