php - 为我的整个网站创建一个数据库层类,需要一些关于 PHP 的建议吗?

标签 php object installation

我目前正在尝试为自己构建一些不错的类,以更快地构建我的页面。

我目前有这个设置,

// page class
class Page extends DBC {
    // creates a page
    public function create($data = false) {
       echo 'SOME BASIC HTML TO SETUP PAGE';
       // pass the database connection var to content function
       content($this -> $dbc, $data);
       echo 'SOME BASIC HTML TO SETUP PAGE';
    }
}
// dbc class
class DBC {
    public $dbc;
    public function __construct() {
        // sets the database connection
    }
}

对于我创建的每个新页面,我只是在将我的类添加到脚本中后执行此操作。

// content function
function content($dbc) {
    // some content
    // am able to use dbc
}
// new page object
$page = new Page();
// am able to use dbc var fine here too
$page -> dbc -> // execute a query
// create page
$page -> create();

但我现在面临的问题是如何最好地在我的 DBC 中创建函数类使我的查询构建更快。我尝试将以下函数添加到类 DBC ,

public static function query($q, $data, $options = array()) {
    // execute prepared query
    $q = $this -> dbc -> prepare($q);
    return $q -> execute($data);
}

但我不能在我的 content 中使用它函数仅将数据库连接传递给它,并且 query DBC 内的函数类使用对象上下文中的连接。

解释我的问题后我的问题如下;

最好在我的 DBC 中创建为我执行查询的函数吗?类static并只传递现有的连接?

或者

全传DBC会不会更好反对我的content Page 内的函数如下所示的类,

content(new DBC(), $data);

这样我就可以在对象上下文中使用函数。 Page类仍需要通过 DBC 进行扩展类,因为我需要使用 dbc content 之外的 var功能也。但这不会产生 DBC 的 2 个实例吗?当它扩展为 Page 时为一类和一个传递到 content 时功能?

感谢您花时间阅读此问题并给出任何答案!

最佳答案

根据我的理解,我认为一个例子是最好的,这样你就可以看一下并根据你的要求进行改进。
检查我在 github 上写的这个类(class)
看看这个 gist关于使用
所以我想说的是,看看它并提出适合您需求的解决方案,或者您可以直接使用它......当然它是免费的

关于php - 为我的整个网站创建一个数据库层类,需要一些关于 PHP 的建议吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11040532/

相关文章:

java - 访问可以是 ConcurrentHashMap 的对象的 ConcurrentHashMap

c++ - 在类构造函数中使用单独类的对象

Java在对象创建中使用参数创建数组

Android Studio 3 缺少 Android SDK

php - 将 MS ACCESS 数据库导入 mySql?

php - 从下拉列表中选择特定项目时从数据库表填充表数据?

java - 关于将Java的计算器程序转换为Exe文件

python - 如何使用 Mac 终端将 python 3.6 更新到 3.7

php - Drupal FAPI 错误;无法创建对/从字符串偏移量或重载对象的引用

php - XAMPP 无法安装 xdebug