一尘不染

在Mac OS X上的PHP中启用PostgreSQL支持

php

我很难在Mac上正常使用命令“
pg_connect()”。我目前正在编写一个PHP脚本(将从控制台执行)以读取PostgreSQL数据库并通过电子邮件发送报告。

我已经进入php.ini文件并添加了

extension=pgsql.so

但是,我遇到了以下错误。

PHP警告:PHP启动:无法加载动态库’/usr/lib/php/extensions/no-debug-non-
zts-20090626/php_pgsql.so’-dlopen(/ usr / lib / php / extensions / no-debug
-non-zts-20090626 / php_pgsql.so,9):在第0行
PHP的“ 未知”中找不到图像致命错误:在…中调用未定义的函数pg_connect()…(此处为空白文件)

运行时phpinfo(),我对PostgreSQL没有任何了解,那么这里的问题是什么?


阅读 513

收藏
2020-05-29

共1个答案

一尘不染

OS X附带的PHP版本不包括PostgreSQL。您必须自己编译扩展。以下是一些说明:

  1. 查找您的PHP版本:php -v
  2. 下载与您相匹配的PHP版本:curl -O http://us.php.net/distributions/php-5.3.3.tar.gz。(此示例下载了PHP 5.3.3,但这必须与您的版本匹配)
  3. 解压缩下载的档案: tar -xzvf php-5.3.3.tar.gz
  4. 转到PostgreSQL的扩展目录: cd php-5.3.3/ext/pgsql/
  5. 输入phpize
  6. 输入./configure
  7. 输入make
  8. 输入sudo make install
  9. 通过添加扩展名到您的php.ini文件extension=pgsql.so。(您可能已经这样做了)
  10. 重新启动Apache。

OS X的更新Mountain Lion Apple已从autoconf较新版本的XCode中删除,因此上述过程将在#5处失败。要解决该问题:

  1. 输入/usr/bin/ruby -e "$(/usr/bin/curl -fksSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)"
  2. 输入sudo chown -R $USER /usr/local/Cellar
  3. 输入brew update
  4. 输入brew install autoconf

这样就可以安装autoconf并允许您使用上面的说明安装模块。

2020-05-29