【问题标题】:Fatal error: Class 'RccgPraiseCentre\User\PDO' not found致命错误:找不到类“RccgPraiseCentre\User\PDO”
【发布时间】:2018-04-07 06:35:39
【问题描述】:

想要从我的数据库中的表中检索信息,基于提供给函数的参数以及字段名称及其给出此错误“致命错误:类'RccgPraiseCentre\User\在第 22 行的 C:\xampp\htdocs\RCCG\app\RccgPraiseCentre\User\HomeMenu.php 中找不到 PDO'
" 这是一个类中的函数。 HomeMenu.php 文件

            <?php
            namespace RccgPraiseCentre\User; 


            class HomeMenu{
                public  $errorArray = array();

                private $db; 

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



            //display all slider base on id  
            public function bannerSlider($id){
                $query = $this->db->prepare("SELECT * FROM  slider_tbl WHERE id = ? LIMIT 1");
                $query->execute(array($id));
                if($query->rowCount()>0){
                $result = $query->fetch(PDO::FETCH_ASSOC);
                return $result;
                }else{
                    echo '<h2 style="color:white;">RCCG Praise Centre Area Headquater</h2>';
                }}

第 22 行是这段代码 $result = $query->fetch(PDO::FETCH_ASSOC);

这是我调用函数的页面

    <?php
    include_once"includeFiles/dbconfig.php";

    require_once __DIR__.'/../vendor/autoload.php';
    use RccgPraiseCentre\User\HomeMenu as HomeMenu;


    $object = new HomeMenu($db);
    echo $object->bannerSlider('1')['header_title'];

    ?>

“header_title”是我表中的字段名称,我正在尝试从该字段中获取信息...我想使用类似这样的方式从表中获取信息 echo $object->bannerSlider('1')[' header_title']; , 回声 $object->bannerSlider('1')['header_body']; , 回显 $object->bannerSlider('1')['header_link'];等等。感谢您为帮助我解决这个问题所做的努力。

    <?php

    $DB_host = "localhost";
    $DB_user = "root";
    $DB_pass = "";
    $DB_name = "rccgpraisecentre";

    try
    {
        $db = new PDO("mysql:host={$DB_host};dbname={$DB_name}",$DB_user,$DB_pass);
        $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    }
    catch(PDOException $e)
    {
        echo $e->getMessage();
    }

【问题讨论】:

    标签: php mysql pdo


    【解决方案1】:

    因为您已经在命名空间中定义了文件,所以您需要使用 use 导入类或使用 \ 前缀来表示您想要来自根命名空间而不是当前命名空间的类。

    问题在于这个常量:PDO::FETCH_ASSOC,可以使用\PDO::FETCH_ASSOC 解决,或者通过在命名空间声明下方添加use PDO; 解决。

    【讨论】:

      猜你喜欢
      • 2012-08-02
      • 2012-02-28
      • 2014-08-05
      • 1970-01-01
      • 2022-08-14
      • 2017-06-14
      相关资源
      最近更新 更多