php - PHP CLI:pdo_pgsql 不存在
问题描述
我浏览了几乎所有类似的问题,但似乎无法为我的安装找到正确的答案。我已经重新安装了我的电脑,我正在尝试在 php-cli 中启用 pdo_pgsql。我在 Windows 10 上并安装了 wampserver64,可以很好地使用。
我通常使用 cakePHP 作为框架,使用 Postgre 作为数据库。
在 Cake PHP 中,您可以使用控制台“烘焙”任何东西。
在尝试烘焙一些模型时,我遇到了关于烘焙的依赖问题。
pdo_pgsql 扩展在 PHP 主文件 php.ini 中启用,但未在 php-cli 模式下加载,这会导致蛋糕烘烤错误。
这是 php --ini 命令的结果:
Configuration File (php.ini) Path: C:\WINDOWS
Loaded Configuration File: C:\wamp64\bin\php\php7.0.33\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
这是 php -m 命令的结果:
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
gd
gettext
gmp
hash
iconv
imap
intl
json
ldap
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
Reflection
session
SimpleXML
soap
sockets
SPL
sqlite3
standard
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
zip
zlib
这是 php --ri pdo_pgsql 命令的结果:
php --ri pdo_pgsql
Extension 'pdo_pgsql' not present.
快速回顾我的安装:
Windows 10
Wampserver64
POSTGRESQL 9.6
PHP 7.0.33
APACHE 2.4.4
我已经检查了不同的解决方案,例如通过 httpd.conf 中的 LoadFile 从 postgresql bin 目录添加“libpq.dll”,我还测试了从同一文件中的 php 目录加载“libpq.dll”,到目前为止没有结果。
谁能指点我一个方向?
解决方案
取消注释 php.ini 中的扩展名并编辑httpd.conf
并在所有 LoadModule 行的顶部添加以下内容:
LoadFile "actual_path_of_libpq.dll"
重新启动服务器,看看它是否有效。
签入phpinfo()
推荐阅读
- javascript - 如何使用 javascript 在表单输入值中编写 cookie?
- javascript - 上传到dropzone(dropzone.js)的图片使用cropper.js进行裁剪,但发布时不显示裁剪的图片
- python - Clickhouse - 数据转换/解析
- javascript - 如何对使用 Node.js 和 Yeoman 创建的 Javascript Office 插件 (OneNote) 进行故障排除?
- android - Android kotlin 使用 ViewModelFactory 将动态参数/参数传递给 ViewModel
- javascript - Vanilla Javascript 在数组上使用函数,每个元素有多个值
- spring-boot - 通过过滤器/拦截器代理http请求的最直接方法是什么?
- opencv - 如何在opencv python中获取面部温度
- firebase - 如何在 Crashlytics/Flutter (Android) 中查看 Dart 代码堆栈跟踪而不是 Java 代码堆栈跟踪
- python - 在 Matplotlib lib 中创建 10 个不同的图形而不单独创建它们