找不到类“ Db”

杰克·巴特勒

当我尝试使用pdo_object.php文件连接到我的SQL数据库时,我的model.php返回此错误:

Fatal error: Class 'Db' not found in /path/model.php on line 8

我确保所有权限都正确并且凭据对我的所有文件都是正确的。这是有问题的两个文件。

不太确定问题出在哪里,所以任何帮助都很棒。

pdo_object.php

<?php
    $user = 'someusername';
    $pass = 'somepassword';
    $db_info='somehost';
    try {
        $db = new PDO($db_info, $user, $pass);

    } catch (PDOException $e) {
        print "Error!: " . $e->getMessage() . "<br/>";
        die();
    }


    ?>

然后是model.php

    <?php
include('pdo_object.php');

 class Model{
    public $db;

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

    public function getAllRecords($sql, $parameters = null){
        $stm = $this->db->prepare($sql);
        $stm->execute($parameters);
        return $stm->fetchAll();
    }

     public function getOneRecord($sql, $parameters = null){
                $stm = $this->db->prepare($sql);
                $stm->execute($parameters);
                return $stm->fetch();
        }

}
?>
delboy1978uk

哪里class Db { //blah }无处。但是您已经$db在第一个文件中定义了。

我还建议依赖注入,而不是在类内部调用静态类方法。本质上,在构造函数中传递$ db:

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

实例化为:

$model = new Model($db);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章