2015-01-05 19 views
3

오라클 DB에 연결하기위한 PHP 스크립트를 작성하기 위해 win7 (x64) PC에 acutal XAMPP를 설치했습니다. 또한 정상적인 Oracle 11.2.0 클라이언트가 설치되어 있습니다 (PATH 및 ORACLE_HOME이 올바르게 설정되어 있음). 클라이언트는 문제없이 다른 모든 작업에 사용됩니다.oracle 클라이언트 11.2를 win7 x64에서 php (xampp)와 함께 사용

오라클 DB에 연결하려고하면 PHP가 Fatal error: Call to undefined function oci_connect() in과 함께 실패합니다. 나는 몇 년 전에 x32 winXP PC에서 같은 일을했을 때 내 php.ini에서 "oci8-extensions"를 활성화해야한다는 것을 기억합니다. 그러나 내 현재 xampp은 php/ext 폴더에 이러한 dll이 없습니다 (단지 php_oci8_12c.dll이 아파치 시작에서 알 수없는 함수의 오류를 던지고 오라클 12에서는 11이 아니며 php.ini에는 필요하지 않습니다) 인스턴트 클라이언트.

;extension=php_oci8.dll  ; Use with Oracle 10gR2 Instant Client 
;extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client 

은 또한이 SO-questions 정상적인 클라이언트와 주석 확장을 사용하면 (나는 또한 시도하는) 작동하지 않습니다 보여줍니다.

나는 해결책을 찾기 위해 노력했지만 모든 "솔루션"은 "win32 인스턴트 클라이언트를 설치하고 확장을 사용 가능하게 설정"합니다. 하지만 대부분의 QA 작업에는 설치되고 구성된 11.2.0 클라이언트가 필요하며 어쨌든 .dll은 내 php/ext-folder에 없습니다.

나는 또한 복사를 시도했습니다. client/bin 폴더의 ociw32.dll을 php/ext-folder에 넣었지만 아파치는 PHP 라이브러리가 아니라고 말합니다.

그래서 x64 win7에서 XAMPP 용 oci8을 사용하려면 PHP 오라클 라이브러리를 활성화 할 수 있습니까 win32 Oracle Instant Client를 설치하고 현재 설정을 삭제합니까?

편집 : 나는 또한 in the PHP: Installation Manual (Post of: samantha dot vincent at gmail dot com)이 내 apache-http.conf를 변경하는 것을 포함하여 설명 된 단계를 시도해 보았습니다.이 또한 도움이되지 않았습니다. 그것이 내가 마침내 해결책을 발견

Configure Command "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" 

답변

4

말한대로

나는 또한 내 phpinfo() - 출력의 혼동 해요 : 내 경우 32 비트에서 (

내가 "PECL :: PAckage :: oci8 :: 2.0.8"에서 실제 OCI-DLL을 다운로드를, 다음 스레드 DLL) 그리고 나는 또한 내 다음 줄을 추가

;extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client 

이 라인에서 ;을 제거하여 http.conf 아파치

SetEnv ORACLE_BASE "C:/oracle/" 
SetEnv ORACLE_HOME "C:/oracle/product/11.2.0/client_1" 

의 그 후 나는, 아파치를 재시작 내 연결 별명이 아마 내 tsnames.ora에 배치 된 후 나는 어떤 문제 우유없는 OCI8-기능을 사용할 수 있음을 확인했다.

+0

@bish, 다운로드 한 파일을 어디에 두었습니까? – Abaij

+0

'php/bin' 디렉토리에 있습니다. – bish

+0

을 http.conf 파일을 변경하지 않고 다운로드하십시오.이 자습서는 다음과 같습니다. [XAMMP] (https://www.devside.net/wamp-server/connect-wamp-server-to-oracle-with-php-php_oci8_11g-dll) | [오라클] (http://www.oracle.com/technetwork/articles/technote-php-instant-084410.html) | [PHP.NET] (http://php.net/manual/es/function.oci-connect.php#90816) –