解决未定义类型'App\PDO'错误:尝试使用PDO创建PHP CRUD应用程序配置文件的修复方法
P粉235202573
P粉235202573 2023-08-31 15:23:03
[PHP讨论组]

整个项目 - https://github.com/steve-davey/phpsqliteconnect(配置文件已过时)

这是配置文件:

<?php

namespace App;

class Config {
   /**
    * sqlite文件的路径
    */
    const PATH_TO_SQLITE_FILE = 'db/DeviceAssetRegister.db';

}

/* 数据库凭据。假设您正在运行具有默认设置的MySQL服务器(用户'root',无密码) */
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'DeviceAssetRegister');
 
/* 尝试连接到MySQL数据库 */
try{
    $pdo = new PDO("mysql:host=" . DB_SERVER . ";dbname=" . DB_NAME, DB_USERNAME, DB_PASSWORD);
    // 将PDO错误模式设置为异常
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("错误:无法连接。" . $e->getMessage());
}
?>

我不明白为什么在上面的目录中的index.php文件没有错误,而对于PDO却出现错误?

$pdo = new PDO('sqlite:./db/DeviceAssetRegister.db');

那个完全没问题!我什至在VSC中得到了一个链接到PHP文档的小弹出描述。所以为什么在其他文件中会报错呢?谢谢!

P粉235202573
P粉235202573

全部回复(1)
P粉930448030

PDO 是来自根命名空间的一个类。除非你正确使用了根命名空间(要么通过导入 PDO,要么使用 new \PDO),否则 PHP 将从当前命名空间(即 App)中搜索该类。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号