ThinkPHP 連接Oracle數據庫的詳細教程(1)

一、 操作環境搭建
系統:Windows7 旗艦版 64位
PHP環境:wampserver2.2e-php5.4.3-httpd2.2.22-mysql5.5.24  32位版
下載地址:http://www.wampserver.com/en/


ThinkPHP:3.0正式版
下載地址:http://thinkphp.cn/down.html


Oracle:Orcale_11gR2  32位版
下載地址:http://www.oracle.com/technetwork/cn/indexes/downloads/index.html


數據庫操作工具:PLSQL Developer 32位
下載地址:http://www.allroundautomations.com/plsqldev.html


開發工具:NetBeans IDE 7.1.2
下載地址:http://netbeans.org/downloads/index.html 下載單PHP的版本即可

說明:這裏我反覆強調軟件的“位”,是因爲這個很重要,一般情況下,我們系統是64位的,那麼最好軟件也用64位的,但是這裏除過系統外,全部選擇32位是有原因的,目的是爲了配合PLSQL Developer和WAMP的PHP擴展。因爲PLSQL Developer沒有64位版。有的朋友說用64位Oracle數據庫,裝32位客戶端就行,我不想這樣做,如果不喜歡我的操作方式,可以繞道。當然了,如果你不使用PLSQL Developer,而選擇使用Oracle 自帶的SQL Developer,那麼你全安裝64位或32都是你自己的事。PHP連接Oracle數據庫需要開啓相應的擴展,這個擴展也需要數據庫客戶端的支持,因爲php擴展也需要對應數據庫客戶端的位數。囉嗦完畢。

 

二、 環境配置
1, 操作系統的安裝我就不說了,Oracle安裝自己解決,NetBeans IDE 7.1.2也自己解決。

2, Wamp的安裝我也不說了,不會的直接從DOS開始重新學習吧。

3, WAMP會把PHP的網頁文件夾定義在安裝wamp的文件夾下的www裏面,我是安裝在D盤,所以就是D:\WAMP\www。我們暫時不做別的自定義修改。啓動wamp,系統托盤圖標爲綠色表示啓動OK。

4, 打開localhost,看到如下界面,表示環境配置基本OK。爲什麼是基本了,因爲還沒有對Oracle的配置進行設置。

 

5, 打開如圖的PHP擴展菜單,在綠色圖標上,左鍵->PHP->PHP擴展,點擊php-oci8的擴展,這時候這個WAMP會重啓,等待重啓後變綠,就表示OK。

6, 再次打開剛纔的localhost頁面,如果找到如圖4的顯示,就表示目前PHP已經支持Oracle了。

注意,我現在用的 wamp和oracle客戶端都是32位,如果其中一個是64位,那麼這個oci的擴展時打不開的,同時自動環境監測頁面也沒有oci8的顯示。在不使用PL/SQL的前提下,必須是32位Oracle和32位WAMP搭配,64位Oracle和64位WAMP搭配,else請繞道。

 

三、 ThinkPHP配置
1, 把下載好的3.0正式版解壓,項目中只需要ThinkPHP文件夾,這是核心。
2, 使用IDE新建一個項目,項目的文件夾爲剛纔的Wamp下的www文件夾,如果個人需要自定義別的文件夾,需要修改apache的配置文件,這裏我不修改。
3, 將Thinkphp文件夾拷貝到項目文件夾中,新建一個php文件,命名index.php。
4, IDE中已經有這些文件的顯示了,打開index.php,編寫如下內容:

<?php
    define('APP_DEBUG', true);
    require './ThinkPHP/ThinkPHP.php';



5, 在瀏覽器中打開localhost/項目名/index.php,Thinkphp會幫你生成好相關文件和文件夾。
6, 對配置文件進行操作,找到:Conf文件夾下config.php文件,修改如下:

<?php

return array(
    'DB_TYPE' => 'Oracle', // 數據庫類型
    'DB_HOST' => '192.168.0.8', // 服務器地址
    'DB_NAME' => 'orcl', // 數據庫名
    'DB_USER' => 'test', // 用戶名
    'DB_PWD' => 'test', // 密碼
    'DB_PORT' => '1521', // 端口
);


Oracle數據庫和mysql 的結構不同,一般默認安裝的數據庫名是orcl,如果你使用了多個數據庫監聽,那麼就要根據具體的監聽字段來設置。比如:我本機數據庫堅挺是Orcl,同時監聽另外一個外網的數據庫,監聽字符串爲Orcl2,那麼如果你需要連接這個外網數據庫,那麼需要寫的數據庫名就是orcl2。


7, 經過以上的配置,是已經可以連接oracle數據庫了,但是在thinkphp的實際操作中有什麼注意的地方,且聽下回分解。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章