Php 获得';找不到驱动程序';带有新域名的邮件

Php 获得';找不到驱动程序';带有新域名的邮件,php,mysql,pdo,mysqli,Php,Mysql,Pdo,Mysqli,我正在使用一个php框架,并在我创建的第一个网站上成功地使用了它。我买了一个新域名,正在我的第二个网站上工作。我拥有的php框架基本上是用于注册/登录许多其他东西,但这是它背后的核心要素。我正在尝试做的是用相同的框架创建我的新站点,因为它将是一个基于成员的站点。由于某些原因,尽管我遇到了以下错误: 警告:PDO::\u construct()要求参数2为字符串、数组 在上的/home4/pfarley1/public_html/example.com/classes/DB.php中给出 第13行

我正在使用一个php框架,并在我创建的第一个网站上成功地使用了它。我买了一个新域名,正在我的第二个网站上工作。我拥有的php框架基本上是用于注册/登录许多其他东西,但这是它背后的核心要素。我正在尝试做的是用相同的框架创建我的新站点,因为它将是一个基于成员的站点。由于某些原因,尽管我遇到了以下错误:

警告:
PDO::\u construct()
要求参数2为字符串、数组 在上的
/home4/pfarley1/public_html/example.com/classes/DB.php
中给出 第13行

致命错误:对中的非对象调用成员函数
prepare()
/home4/pfarley1/public_html/example.com/classes/DB.php
第27行

如13:

$this->_pdo = new PDO('mysql:host=' . Config::get('mysql/host') . ';dbname=' . Config::get('mysql/db'), Config::get('mysql/username'), Config::get('mysql/password'));
第27行:

    if($this->_query = $this->_pdo->prepare($sql)) {
我有一个core/init文件,用于提取我的db/host凭据,其中包含正确的信息

$GLOBALS['config'] = array(
'mysqli' => array(
    'host' => 'localhost',
    'username' => 'root',
    'password' => '',
    'db' => 'sfd'
),
我尝试通过以下方式将第13行更改为mysqli:

    $this->_pdo = new PDO('mysqli:host=' . Config::get('mysqli/host') . ';dbname=' . Config::get('mysqli/db'), Config::get('mysqli/username'), Config::get('mysqli/password'));
当我这样做时,我得到了“找不到驱动程序”错误


我做错了什么?这个完全相同的代码适用于我在同一主机上的另一个网站???

如果您想使用第一个提供的
$This->_pdo
,请将配置中的
mysqli
更改为
mysql

pdo和mysqli是互斥的。它们做相似的事情,不能一起使用

要使用PDO(我的强烈建议),请将引用从MySqli更改为MySQL

$GLOBALS['config'] = array(
'mysql' => array(
    'host' => 'localhost',
    'username' => 'root',
    'password' => '',
    'db' => 'sfd'
),

这里对这两行进行了深入的比较-

这里记录了第1行到第100行?你发现自己身处一个类似论坛的地方,与他人交谈。我不明白你的意思。给我们看看代码,让我们看看它有多混乱。这不像你的声誉是1请在try{}catch(){}use
try{$this->_PDO=new PDO('mysqli:host='.Config::get('mysqli/host')。;dbname='.Config::get('mysqli/db')、Config::get('mysqli/username')、Config::get('mysqli/password');}catch(PDO异常$e){echo'连接失败:'.$e->getMessage();}
并告知错误