【问题标题】:Classes functions that need access to database类需要访问数据库的函数
【发布时间】:2015-07-12 16:44:22
【问题描述】:

关于我的问题,我不知道要搜索什么,所以希望有人可以帮助我。

建立一个数据库连接类和其他几个具有需要访问数据库而不重复自己的功能的类的最有效和最短的方法是什么?

有没有一种方法可以声明一个变量,例如可以从任何类访问的 $pdo?

或者,如果有人能告诉我要搜索的正确术语,那将很有帮助。

谢谢。

例如:

class connection {
    PDO data connection goes here
}

class A {
    function foo() {
        //This function needs access to database
        $pdo->query($query);
    }
}

class B {
    function bar() {
        //Also needs access to database
        $pdo->query($query)
    }
}

【问题讨论】:

  • 搜索 MVC(模型视图控制器)。

标签: php function class pdo


【解决方案1】:

我会创建数据库类并将其扩展到其他类:

class connection {
    PDO data connection goes here
}

和这样的A类,

class A extends connection{
    function foo() {
        //This function needs access to database
        $pdo->query($query);
    }
}

现在class A 可以访问class connection 方法和属性。

【讨论】:

    【解决方案2】:

    据我了解,您可以创建一个类来连接数据库

    class dbConnect {
    //Connection goes here
    }
    

    然后创建一个扩展此连接类的基本模型类,您也可以在构造函数中这样做,以便在实例化类后立即设置连接

    class BaseModel extends dbConnect {
    }
    

    然后在您的应用每次运行时使用 php 的 autoload ref 自动加载这两个类:

    php.net/manual/en/language.oop5.autoload.php
    

    然后根据需要扩展其他类

    xyz 类扩展 BaseModel { }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-23
      • 1970-01-01
      • 2013-04-27
      相关资源
      最近更新 更多