CodeIgniter - 调用未定义函数 sqlsrv_connect() - 驱动程序似乎已加载(PHP 版本:8.0.3)

CodeIgniter - Call to undefined function sqlsrv_connect() - Driver seems to be loaded (PHP Version: 8.0.3)

我必须为我的公司创建一个需要连接到 Microsoft SQL 服务器的项目。我按照说明在我的网络服务器上安装了服务器驱动程序。如果我 运行 phpinfo();print_r(PDO::getAvailableDrivers()); 我得到 sqlsrv 结果。

问题是如果我尝试通过 CodeIgniter 连接到数据库服务器,我会收到错误消息

Call to undefined function sqlsrv_connect()`

但是如果我尝试通过 new PDO("sqlsrv:Server=" . $this->_serverName . ";Database=" . $this->_database, $this->_uid, $this->_pwd); 连接到服务器,它完全可以正常工作。

这是我来自 CodeIgniter 的 database.php:

$active_group = 'default';
$query_builder = TRUE;

$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost',
    'username' => 'jderigs',
    'password' => 'Mumsili1',
    'database' => 'chs_001',
    'dbdriver' => 'sqlsrv',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

这是 print_r(PDO::getAvailableDrivers()); 的结果:

Array
(
    [0] => mysql
    [1] => sqlite
    [2] => sqlsrv
)

我完全不知道我做错了什么。希望你们中有人能帮助我。

在一位友好用户的帮助下,我发现我在配置网络服务器时犯了一个错误。我不知道必须有一个名为 sqlsrv.

的部分

重装驱动,一切正常