我有Snow Leopard并且正在使用默认的apache。我通过macports安装了postgresql。所以现在我可以从终端做一个psql(我试过但是没能通过macports安装php5,但是出现了错误)
我启用了php5并重新启动了apache所以现在我有了php。但对于我的生活,我无法弄清楚postgresql与php一起工作。我正在尝试做一个pg_connect(),我得到了
"Fatal error: Call to undefined function pg_connect() in /private/var/www/html/sheep/connect.php on line 4"
我已经把
extension=pgsql.so
extension=pdo_pgsql.so
在php.ini文件中。我的phpinfo说我的extension_dir = / usr / lib / php / extensions / no-debug-non-zts-20090626
我去了我的mac上的/ usr / lib / php / extensions / no-debug-non-zts-20090626目录,实际上将pgsql.so和pdo_pgsql.so放在MAMP的那个目录中。我在pgsql.so的终端找到了一个位置,它存在于我的MAMP目录中。我不想再使用MAMP了,但想想也许我可以移动.so文件并使用它。
我是否必须使用postgresql重新编译php?我是否必须做一些特殊的事情来获取非MAMP pgsql.so文件?我不知道pdo_pgsql.so是什么,但我想我会尝试一下,这就是为什么它就在那里。
答案 0 :(得分:1)
最简单的方法是使用来自Macports的所有软件包:
sudo port install apache2 postgresql83 php+postgresql83+mysql5+pear+apache2
否则你将不得不手动下载源代码并进行编译...你不能使用mamp提供的二进制文件,除非你使用mamp。