如何将Postgres支持添加到由Homebrew安装的PHP?

我已经使用Homebrew安装并configuration了新版本的PHP,包括MySQL支持和XDebug。 这工作正常。 不过,我也需要安装对PostgreSQL的支持。 我该怎么做?

我已经想通了,首次安装PHP很容易,只需要添加下面的选项:

homebrew install php53 --with-pgsql 

当我的PHP已经安装完毕,我怎么能达到类似的效果,而不需要重新安装? 或者,如果我重新安装,所有configuration和其他设置,如XDebug,保存?

brew help不显示每个选项可用。 要获得关于所有可用命令的更多细节,请参见man brew 。 在你的情况下,你可以运行重新安装命令:

 brew reinstall php53 --with-postgresql 

根据brew man页面,这是运行卸载然后安装的代名词。 它确实显示brew将首先备份已知的configuration文件。

如果brew抱怨无法findpg_config ,那么这意味着您需要首先安装postgresql – 它必须是postgresql ; 否则它永远不会findpg_config 。 我花了很多时间试图弄清楚为什么--with-pgsql在安装postgresql92公式时不起作用。

我可以亲自确认它不会删除任何自定义configuration文件。

当php已经安装,你可以运行brew install php55-pdo-pgsql

如果你使用自制软件:

 ls /usr/local/Cellar/|grep php php54 

正如你可以看到我的自制软件版本是PHP 5.4,所以我searchHomebrew:

brew search php54

在search结果中,我看到了php54-pdo-pgsql

所以,我安装了驱动程序:

brew install php54-pdo-pgsql

然后重新启动PHP。

如果您使用brew安装了PHP,则必须在安装任何模块后重新启动php:

 brew services restart php70 

之后,您可以使用新安装的模块。

我有一个与PHP55类似的问题,解决了卸载(brew卸载php55)和重新安装(brew安装php55 –with-postgresql)。

如果你已经安装了PHP,你的Mac OS X上的以下内容。

 brew install homebrew/php/php55-pdo-pgsql 

类似于上面的答案,虽然这些工作都不够好,但我使用brew reinstall php70 --with-postgresql而不是un / install,由于链接的依赖关系而失败。

按照上面的build议, brew services restart php70sudo apachectl restart好的措施。