2016-07-26 2 views
0
내가 아파치 OS X 엘 캐피 PHP &와 PostgreSQL을 실행하는 동안 다음과 같은 오류 받고 있어요

에 정의되지 않은 오류 :pg_connect() OSX

Fatal error: Call to undefined function pg_connect()

을 나는 최근에 설치 아파치 & PHP가 지금 원 데이터베이스 쿼리에 PostgreSQL을 추가합니다. Postgres.app은 지금까지 Java로 잘 작동했습니다. 나는 아주 사소한 구성 세부 사항을 놓치고 싶다.

PHP는 PHP 버전 5.5.34로 잘 작동, 그래서 난 그냥 실행 싶어 : 나는 아파치 설정을 조정은 phpinfo로, 양조 설치 PHP 5.5.38을 인식

brew install php55-pdo-pgsql 

(); 이제 34 대신 38을 보여줍니다.

터미널에 php -v를 입력해도 5.5.34가됩니다.

brew install php56-pdo-pgsql 

그러나 pg_connect()가 아직 정의되지 않은 :

은 또한 할 노력했다. phpinfo(); 다음 반환

PHP Version 5.6.24 System Darwin XXXYYYZZZ 15.5.0 Darwin Kernel Version 15.5.0: Tue Apr 19 18:36:36 PDT 2016; root:xnu-3248.50.21~8/RELEASE_X86_64 x86_64 
    Build Date Jul 22 2016 02:40:35 
    Configure Command './configure' '--prefix=/usr/local/Cellar/php56/5.6.24' '--localstatedir=/usr/local/var' '--sysconfdir=/usr/local/etc/php/5.6' '--with-config-file-path=/usr/local/etc/php/5.6' '--with-config-file-scan-dir=/usr/local/etc/php/5.6/conf.d' '--mandir=/usr/local/Cellar/php56/5.6.24/share/man' '--enable-bcmath' '--enable-calendar' '--enable-dba' '--enable-exif' '--enable-ftp' '--enable-gd-native-ttf' '--enable-mbregex' '--enable-mbstring' '--enable-shmop' '--enable-soap' '--enable-sockets' 
'--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--enable-wddx' '--enable-zip' '--with-freetype-dir=/usr/local/opt/freetype' '--with-gd' '--with-gettext=/usr/local/opt/gettext' '--with-iconv-dir=/usr' '--with-icu-dir=/usr/local/opt/icu4c' '--with-jpeg-dir=/usr/local/opt/jpeg' '--with-kerberos=/usr' '--with-libedit' '--with-mhash' '--with-ndbm=/usr' '--with-png-dir=/usr/local/opt/libpng' '--with-xmlrpc' '--with-zlib=/usr' '--with-readline=/usr/local/opt/readline' '--without-gmp' '--without-snmp' 
'--with-libxml-dir=/usr/local/opt/libxml2' '--with-pdo-odbc=unixODBC,/usr/local/opt/unixodbc' '--with-unixODBC=/usr/local/opt/unixodbc' '--with-apxs2=/usr/sbin/apxs' '--libexecdir=/usr/local/Cellar/php56/5.6.24/libexec' '--with-bz2=/usr' '--disable-debug' '--with-openssl=/usr/local/opt/openssl' '--enable-fpm' '--with-fpm-user=_www' '--with-fpm-group=_www' '--with-curl' '--with-xsl=/usr' '--with-ldap' '--with-ldap-sasl=/usr' '--with-mysql-sock=/tmp/mysql.sock' '--with-mysqli=mysqlnd' '--with-mysql=mysqlnd' 
'--with-pdo-mysql=mysqlnd' '--disable-opcache' '--enable-pcntl' '--without-pear' '--enable-dtrace' '--disable-phpdbg' '--enable-zend-signals' 'CC=clang' 'CXX=clang++' 

[...] 같은 문제가 사람을 위해

pdo_pgsql 

PDO Driver for PostgreSQL enabled 
PostgreSQL(libpq) Version 9.5.3 
Module version 1.0.2 
Revision $Id: 0e858dd2051ca8c2fd3c781909a0670ab5fecd36 $ 
+0

어떻게 PHP를 설치 했습니까? 나는 postgresql이 활성화 된 곳을 보지 못했다. –

+0

나는 이미 5.5.34 버전을 설치했고 php로 실행되는 아파치 서버를 얻는 가이드를 따라 갔다. 최신 버전 : brew install 명령과 함께 설치되지 않았습니까? –

+0

postgresql 관련 : brew install postgresql에서 이미 설치 되었음 9.5.3 –

답변

0

, 단순히 실행

brew install php56 --with-postgresql 

대신 단지

brew install php56 

이를 pgsql과 pdo-pgsql 모듈로 PHP를 설정합니다. 필자의 경우 pgsql 모듈이 없습니다.

내가 한 :

만 PDO-를 pgsql 아닌 pgSQL의 모듈과 PHP를 설치하는 것
brew install php56 
brew install php56-pdo-pgsql 

참조 : 나는 PostgreSQL을 시작하고 psql 프로그램을 사용하는 모든 후 https://serverfault.com/questions/533103/how-to-add-postgres-support-to-php-installed-by-homebrew

:

brew services start postgresql 
psql postgres 

표준 수퍼 유저는 내 login- Mac 용 이름 (보통 postgres가 아닐 수도 있음). 일단 psql에 연결되면 나만의 것을 만들 수 있습니다.

0

또한 php7의 경우 이제 --with-postgresql입니다.

Warning: homebrew/php/php71: --with-pgsql was deprecated; using --with-postgresql instead!