pdo sqlite 找不到驱动程序... php 文件未处理

Posted

技术标签:

【中文标题】pdo sqlite 找不到驱动程序... php 文件未处理【英文标题】:pdo sqlite could not find driver... php file not processing 【发布时间】:2012-02-06 21:23:41 【问题描述】:

您好,我在尝试通过 php 文件连接到 sqlite 时收到 找不到驱动程序 错误。我已将权限设置为 777... PHP 版本 5.2.16,我安装了模块。找不到驱动程序的任何原因,php.ini 也显示扩展 pdo.so 和 pdo_mysql.so 已安装。

PDO

已启用 PDO 支持 PDO驱动mysql

pdo_mysql

用于 MySQL 的 PDO 驱动程序,客户端库版本 5.0.92

try 
    // Connect to the SQLite Database.
    $db = new PDO('sqlite:.subscribers.db');
 catch(Exception $e) 
    die('connection_unsuccessful: ' . $e->getMessage());

【问题讨论】:

http://www.php.net/manual/en/ref.pdo-sqlite.php 【参考方案1】:

我必须实际安装扩展程序,这就是我在运行 PHP 7.1Ubuntu 16 上所做的:

sudo apt install php7.1-sqlite3

【讨论】:

sudo apt-get install php5-sqlite 用于 Ubuntu 服务器 14.04.5 LTS 上的 php5 sudo apt install php-sqlite3 用于 php7 的所有变体 sudo apt install php8.0-sqlite3 如果你使用 PHP 8。【参考方案2】:

你需要

[PDO_SQLITE]
extension=pdo_sqlite.so

sqlite:.subscribers.db启用

或者,对于窗户:

[PHP_PDO_SQLITE]
extension=php_pdo_sqlite.dll

当然还有你的ext目录中的这个扩展

【讨论】:

我是否必须重新编译 php 才能获得 pdo_sqlite.so 扩展名? 不,只需将*.so 文件添加到ext 目录,在php.ini 中添加几行即可 好吧,我想通了sudo pecl install pdo_sqlite 做到了 pdo_mysql 之前的 sqlite 做到了。 另外,在 ubuntu 上:***.com/questions/8822209/… 我已经编辑了 /etc/php5/apache2/php.ini 然后我重新启动了 Apache (sudo service apache2 restart)【参考方案3】:

在archlinux上我必须做两件事:

先安装php-sqlite

pacman -S php-sqlite

在那之后,在我的php.ini/etc/php/php.ini 文件中,我不得不取消注释这一行:

;extension=pdo_sqlite.so

通过删除分号。

别忘了重启服务器。

【讨论】:

非常适合我!谢谢。正如你所说,我只是取消注释 ;extension=pdo_sqlite.so 。【参考方案4】:

我在 Windows 上使用可移植版本的 PHP,使用内置的 Web 服务器。我发现以下步骤有所帮助:

    将 php.ini-development 重命名为 php.ini 在 [PHP] 下取消注释 extension_dir = "ext"(大约第 700 行) 确保以下行在 php.ini 中:
[sqlite3]    
sqlite3.extension_dir = "ext"    
extension = sqlite3    
extension = pdo_sqlite
    运行 php 网络服务器并添加以下标志:- c C:\Path\to\PortablePHP\php.ini

所以目前我的php命令是php -S localhost:8081 -c B:\Downloads\php-7.2.6\php.ini

【讨论】:

以上是关于pdo sqlite 找不到驱动程序... php 文件未处理的主要内容,如果未能解决你的问题,请参考以下文章

Symfony3 演示项目不起作用:PDO 异常找不到驱动程序(sqlite 案例)

使用 PDO 的 MS Access PHP 连接“找不到驱动程序”错误

PDO:未捕获的 PDOException:找不到驱动程序

PDO 扩展配置 - 我在我的 PHP 应用程序中不断收到 PDOException“找不到驱动程序”

Laravel:PHP Artisan Migrate 抛出 PDO 异常:找不到驱动程序(Postgres)

PHP 7.0 上的 Laravel 5.4:PDO 异常 - 找不到驱动程序 (MySQL)