WAMP 환경 에서 Oacle 함수 라 이브 러 리 확장(oci)

동료 가 어제 phop 으로 Oacle 데이터 베 이 스 를 처리 하 는 임 무 를 받 았 습 니 다.그러나 phop 으로 Oacle 확장 을 여 는 것 은 my sql 처럼 직접 사용 하 는 것 이 아니 라 다음 것 이 필요 합 니 다.
첫 번 째 단 계 는 Oacle 공식 에서 install client 패 키 지 를 다운로드 해 야 합 니 다.win 에서 시스템 버 전의 zip 를 찾 아야 합 니 다.(시스템 버 전 임 을 주의 하 십시오)
2015-06-25 까지 다운로드 주 소 는 다음 과 같 습 니 다http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
예 를 들 어 Microsoft Windows 용 인 스 턴 트 클 라 이언 트 선택(x64)  php 가 OCI 로 확장 되 어 있 기 때문에 해당 버 전의 가장 완전한 것 을 선택해 야 합 니 다.다른 것 은 OCI 가 없습니다.여기 서 다운로드 하려 면 계 정 이 있어 야 할 수도 있 습 니 다.검증 후에 다운로드 할 수 있 습 니 다.직접 연결 로 다운로드 하 는 것 은 좋 지 않 습 니 다.없 으 면 등록 하면 됩 니 다.
두 번 째,win 시스템 의 확장 패 키 지 를 다운로드 해 야 합 니 다.바로.dll 파일 입 니 다.  다운로드 주소   http://pecl.php.net/package/oci8    다음 쓸데없는 말 은 어떻게 찾 는 지 알려 주 는 거 야.
이 주소 에서 클릭
official Instant Client site.  끝까지 끌 어 당 겨 주세요.     "PHP - OCI8 extension"
그리고 옵션 다운로드 OCI 8  도착 하 다   http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html  
그리고 어떻게 다운 받 는 지 는 더 이상 얘 기 안 할 게 요.
두 개의 zip 패 키 지 를 다운로드 하고 PHP 설정 을 완료 합 니 다.
셋째,다운 로드 된 첫 번 째 파일 을 컴퓨터 의 임의의 디 렉 터 리 로 압축 을 풀 고 파일 디 렉 터 리 인 스 턴 트 client12 _1  뒤에 있 는""를12_1"제거,나중에 버 전 변경 하면 환경 변 수 를 사용 하지 않 아 도 됩 니 다."
이 디 렉 터 리 에 들 어간 후 더 블 클릭 하여 adrci.exe 를 엽 니 다.
이 클 라 이언 트 가 로 컬 에서 사용 할 수 있 음 을 증명 하기 위해 다음 명령 행 창 을 가 져 옵 니 다.

디 렉 터 리 복사  F:\dev\instantclient  시스템 에 path 환경 변 수 를 설정 합 니 다.
넷 째,다운 로드 된 dll 압축 패 키 지 를 압축 해제 하고 복사 합 니 다.  php_oci8.dll  php_oci8_11g.dll  php_oci8_12c.dll  저 는 현재 이 세 개 입 니 다.phop 까지 의 확장 패키지 파일 입 니 다.보통.../phop/ext/디 렉 터 리 아래 에 있 습 니 다.
사실 바 꾸 지 않 아 도 되 지만 바 꾸 는 게 좋 을 것 같 아 요.
그리고 php.ini 를 열 어 확장 을 엽 니 다.마지막 하 나 는 나중에 추 가 했 습 니 다.php 는 원래 없 었 습 니 다.어차피 빵 에 있 는 dll 파일 을 다 쓰 면 틀 릴 리 가 없습니다.phop 을 실행 할 때 몇 개의 라 이브 러 리 를 더 불 러 옵 니 다.

extension=php_pdo_oci.dll

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

그리고 httpd 서 비 스 를 다시 시작 하고 phpinfo()를 엽 니 다.보 실 수 있 을 거 예요.

PDO support enabled
PDO drivers mysql, oci, odbc
 
OCI8 Support enabled
OCI8 DTrace Support disabled
OCI8 Version 2.0.8
Revision $Id: f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $
Oracle Run-time Client Library Version 12.1.0.2.0
Oracle Compile-time Instant Client Version 10.2
이렇게 하면 확장 이 성공 적 으로 열 렸 다 는 뜻 입 니 다.
마지막 으로 Oacle 데이터 베 이 스 를 연결 하 는 거 예요.
여기 인 스 턴 스 연결 원문 연결http://pecl.php.net/package/oci8

<?php 
//    
$ora_host = "172.16.1.150";
$ora_port="1521";
$ora_sid = "cop";
$ora_username = "webdev";
$ora_password = "webdev";
$charset = "UTF8"; ### zhs16gbk ###

//  Easy Connect string
//(  tnsnames.ora     ,      Connect Name)
$ora_connstr = "(description=(address=(protocol=tcp)
(host=".$ora_host.")(port=".$ora_port."))
(connect_data=(service_name=".$ora_sid.")))";
//     
$conn = oci_connect($ora_username, $ora_password,$ora_connstr);
//  Query,  $res      boolean 
$stid = oci_parse($conn, 'select * FROM dq_try_app');
$res = oci_execute($stid);

// while     oci_fetch_array    。
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
  
  foreach ($row as $item) {
    echo $item."***";
  }
  echo "<br>";
  
}
//var_dump($stid);  
?>

이로써 전체 확장 과 연결 이 완료 되 었 습 니 다.
이상 에서 말 한 것 이 바로 본문의 전체 내용 이 니 여러분 들 이 좋아 하 시 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기