POD擴展是在PHP5中加入,該擴展提供PHP內建類別 PDO來對資料庫進行訪問,不同資料庫使用相同的方法名,解決資料庫連接不統一的問題。以下這篇文章主要跟大家介紹了PHP使用PDO存取oracle資料庫的步驟,需要的朋友可以參考下。
前言
PDO 從一開始就吸取了現有資料庫擴展成功與失敗的經驗教訓。因為 PDO 的程式碼是全新的,所以我們有機會重新開始設計效能,以利用 PHP 5 的最新特性。
PDO 旨在將常見的資料庫功能作為基礎提供,同時提供 RDBMS 獨特功能的方便存取。
雖然LAMP中PHP和Mysql是標準配對,但是公司的專案是Mysql和Oracle分別作為運行庫和詳單庫的,所以PHP連接oracle資料庫也是必須要實現的。本篇文章就介紹下如果透過PDO連接到oracle資料庫,下面話不多說了,來一起看看詳細的介紹吧。
開發環境
#也先說明我使用到的環境:
#RedHat(CentOS)6.7
PHP5.6
Oracle11g
#php5.6的搭建可以參考這裡;
安裝PDO_OCI
下載並解壓縮
#
$ wget https://pecl.php.net/get/PDO_OCI-1.0.tgz $ tar -xvf PDO_OCI-1.0.tgz $ cd PDO_OCI-1.0
修改設定文件
# 在第10行左右找到与下面类似的代码,添加这两行: elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.11.2; then PDO_OCI_VERSION=11.2 # 在第101行左右添加这几行: 11.2) PHP_ADD_LIBRARY(clntsh, 1, PDO_OCI_SHARED_LIBADD) ;;
#編譯
$ phpize
$ rpm -qa | grep php
安裝
$ ./configure $ make && make install
pdo_oci.c:34: error: expected ‘=', ‘,', ‘;', ‘asm' or ‘attribute' before ‘pdo_oci_functions'
建立ini檔案
extension=pdo_oci.so
安裝OCI8
下載並解壓縮
#
$ wget https://pecl.php.net/get/oci8-2.0.8.tgz $ tar -xvf oci8-2.0.8.tgz $ cd oci8-2.0.8
編譯和安裝
$ phpize $ ./configure --with-oci8=shared $ make && make install
建立ini檔案
extension=oci8.so
重啟Apache
$ service httpd restart
<?php phpinfo();
總結
參考&致謝
#
在 CentOS 6.4 64 位元上安裝 PDO_OCI 和 OCI8 PHP 擴充功能
以上是php如何利用PDO存取oracle資料庫的方法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!