小编Ale*_*kin的帖子

依赖注入,其中每个类都依赖于其他几个类

我正在尝试在学习PHP OOP的同时实现最佳实践.我理解这个概念,但对正确的实施有点怀疑.在我试图找出基本的实现原理时,我没有在这段代码中实现DI容器.

结构体

  • 用于数据库连接的Db类.

  • 设置类,从db检索设置.

  • 语言类,检索特定语言的信息.

  • 页面类,产品类,客户类等等.

理念

设置类需要Db类来检索设置.

语言类需要DbSettings才能根据数据库中的设置检索信息.

页面类需要Db,设置语言.它可能还需要一些其他课程.

简化代码

Db.php扩展了PDO

的settings.php

class Settings
{
    /* Database instance */
    protected $db;

    /* Cached settings */
    private $settings   = array();

    public function __construct(Db $db)
    {
        $this->db = $db;
    }

    public function load ()
    {
        $selq = $this->db->query('SELECT setting, value FROM settings');
        $this->settings = $selq->fetchAll();
    } …
Run Code Online (Sandbox Code Playgroud)

php oop dependency-injection

5
推荐指数
2
解决办法
938
查看次数

标签 统计

dependency-injection ×1

oop ×1

php ×1