必须先启用pdo_mysql扩展,否则PHP框架启动时会报错无法初始化数据库;通过php -m | grep pdo_mysql检查,未启用则按Linux、macOS或Windows对应方法安装并重启Web服务器,最后用test-pdo.php运行时验证。

要在PHP框架中快速部署数据库连接功能,必须先确保pdo_mysql扩展已启用,否则Laravel、ThinkPHP等框架启动时会直接报错“Class 'PDO' not found”或“Driver [mysql] not supported”,整个应用无法初始化数据库服务。
确认PHP是否已安装pdo_mysql扩展
在终端执行 php -m | grep pdo_mysql。如果返回空行,说明该扩展未启用或未安装;若显示 pdo_mysql,则跳过后续安装步骤,直接进入php.ini配置检查。
这一步操作起来很简单,直接把命令粘贴进终端回车就行。注意不要用 php -v,它只显示PHP版本,不列出扩展。
Linux系统启用pdo_mysql(Debian/Ubuntu)
运行 sudo apt-get install php-mysql。该命令同时安装pdo_mysql和mysqli扩展,兼容PHP 8.0~8.3主流版本。
立即学习“PHP免费学习笔记(深入)”;
【必须重启Web服务器】 安装完成后不重启Apache或Nginx,PHP脚本仍无法加载新扩展。执行 sudo systemctl restart apache2 或 sudo systemctl restart nginx php8.2-fpm(根据你的PHP-FPM版本调整数字)。
如果你用的是Docker环境,别忘了重新构建镜像或执行 docker exec -it your-php-container bash -c "service php8.2-fpm restart",容器内服务不会自动热更新。
macOS系统启用pdo_mysql(Homebrew + PHP)
方法一:使用Homebrew安装PHP时自带pdo_mysql
检查当前PHP路径:which php → 若为 /opt/homebrew/bin/php,运行 brew install php@8.2(或对应版本)即可,默认启用pdo_mysql。
方法二:手动启用已存在的扩展
找到php.ini位置:php --ini → 编辑输出的Loaded Configuration File路径下的文件 → 搜索 ;extension=pdo_mysql → 删除开头的分号取消注释 → 保存文件。
⚠️ 注意:macOS上通过MacPorts或预装PHP启用pdo_mysql极不稳定,强烈建议统一用Homebrew管理PHP环境。
Windows系统启用pdo_mysql(XAMPP/WAMP)
第一步:打开php.ini文件(通常位于 XAMPP\php\php.ini 或 WAMP\bin\php\php8.2.12\php.ini)
第二步:搜索 extension=php_pdo_mysql.dll → 确保该行未被注释(即前面没有分号)
第三步:确认 extension_dir 指向正确的dll目录,例如 extension_dir = "ext"
第四步:重启Apache服务(通过XAMPP控制面板点击“Stop All”再“Start All”)
如果找不到 php_pdo_mysql.dll 文件,说明PHP安装包损坏,需重新下载对应版本的XAMPP或单独下载PHP二进制包替换 ext/ 目录。
验证pdo_mysql是否生效
创建一个 test-pdo.php 文件,内容为:<?php if (extension_loaded('pdo_mysql')) { echo '✅ pdo_mysql 已启用'; } else { echo '❌ pdo_mysql 未启用'; } ?>
将该文件放入Web根目录(如htdocs),用浏览器访问 http://localhost/test-pdo.php。看到绿色对勾即表示成功。
这一步不能跳过——有些系统显示已安装扩展,但因路径错误实际未加载,只有运行时检测才可靠。



















