1. 程式人生 > >關於php專案的開發回顧總結第二章

關於php專案的開發回顧總結第二章

      在第一章中已經說了,第一次開發我去做的是資料庫管理模組,我這裡說一說當時遇到的一些難題吧,這裡是回顧了,當時每天時間很緊迫,沒有時間去總結,只有在閒暇的時間把自己學到的東西在這總結一下。

當時是大二下學期,限於我對技術瞭解尚淺,所以很多不會,就遇到了以下的難題:

1.svn管理工具的應用

2.navate初試連線oracle11g資料庫

3.ThinkPHP+wampserver下連線oracle資料庫

4.ThinkPHP框架的模板引擎的應用(用模板好複雜,讓我的開發進度慢了好幾倍)

5.oracle中對多個庫的管理

遇到了上邊的難題雖然當時都不懂呀,沒辦法只有去問,慢慢去了解這些了,一步一步來,下邊我就來說一說我解決問題的歷程:

1.對於svn管理工具,我們有一臺windows電腦是svn管理工具的伺服器,只要給你建立一個賬戶就可以訪問下載和上傳專案的相關檔案了,我自己的電腦需要安裝svn客戶端,安裝後就找到wamp的www目錄,把程式碼更新進來,使用svn的時候其實需要注意一下幾項:

(1)在你編寫完程式碼時一定要注意先更新,在把你的程式碼新增進去再上傳,不和其他同學上傳的程式碼起衝突

(2)要注意新新增的檔案要先add之後你才可以新增進去

(3)上傳程式碼只上傳你修改的,千萬不要上傳其它無關的,會處問題的

其他也沒什麼,這幾點注意下,基本可以滿足當時的使用了。

2.navate連線oracle時,當時大家都用的是Oracle SQL Developer,我之前做的一個我們自己用的網站時用的是navate連線的mysql資料庫,感覺很方便就搜尋到了一個帖子關於用navacate連線oracle資料庫,連結地址:http:jingyan http://jingyan.baidu.com/article/495ba84107885538b30edefa.html 。這裡需要用的一個oci.dll檔案下載後弄進去就行了,連線時注意,管理員使用者要用SYSDBA來連線,普通使用者用DEFALUT就行了。

3.首先是安裝這個wamperver的整合開發環境,之前開發那個協會網站時用了這個,還好,但是要用到oracle資料庫的時候你就需要配置oci和開啟php相關的擴充套件了,有三個oci需要加入apach下的bin目錄中,開啟php_oci8、php_oci8_11g和php_pdo_oci這樣你就可以連線oracle資料庫了。好了,在接下來就是ThinkPHP框架了,從svn上更新下來的專案都已經配置好了,當時專案主要配置了資料庫模組和Controller層的許可權訪問模組。

4.這裡來說說用到的這個模板,首先是介面view層要用它的模板,感覺很陌生,包括資料輸出的形式都令人費解,後來還是慢慢熟悉了,其實比較重要的是後臺的模組,業務邏輯層,這裡是Controller層具體thinphp這個框架如何去配置可以參考官方網站的幫助文件,按照步驟去做就行了

5.基於對多個數據庫的同時管理以及應用,這裡還要考慮安全的問題,我們就自己命名了一種對資料庫做的標誌性匹配後就可以分別訪問每個資料庫了,但是問題來了,我改如何獲取這些庫中表的欄位呢(因為當時資料庫接觸的不是太多就不知道,後來經過查閱資料還是解決了),sql語句可以直接查詢出來某個表中的欄位,但是都是英文的,其時應as 可以轉化為中文輸出,但是基於對多個數據庫的動態管理用一套程式碼,因此,這裡採用了表管理表的形式,建立了表中表名稱的中英文對照關係和欄位中英文對照關係,這樣就解決了用一套程式碼來管理多個庫中的多個數據表了,最然這樣做當時開發很省事,但是日後的工作不好呀,程式碼的耦合度太高了,在開發增刪改查時更是感覺無奈,查詢很好做,只要查出來就行了。但是做到刪除與更新和新增的時候就遇到了重重的困難,這些都是要根據使用者選擇的不同資料表來動態拼接sql語句,這裡學到了這一招,拼接sql語句,但是前提你要能獲取到資料,從前臺獲取資料時要通過json來傳輸到後臺,當時怎麼做就是出不來,後來通過$jsonobj = json_decode($a,JSON_UNESCAPED_UNICODE);這個解析之後才可以用了,接下來就是拼接sql,這

樣就解決了這些基本的問題。

       至此,大部分已經介紹完了。