2010-04-01 42 views
3

我想知道在php程序中設置mysql連接對象是否有一個常見的最佳實踐,以便您不要在類中反覆寫入冗餘連接代碼。設置PHP mysql連接的最佳實踐

+0

你是什麼意思「讓你不要在你的類一遍又一遍地寫冗餘連接代碼」? – Dor 2010-04-01 14:01:09

+0

一個相關的關鍵考慮因素:您希望保護連接參數免受暴露,所以您希望它們脫離瀏覽器可以訪問的任何目錄路徑。封裝這些代碼是朝着安全邁出的一步,因爲你只有一個(安全)位置。 – Smandoli 2010-04-01 15:20:07

回答

0

這樣做沒有絕對的正確方式,但您可以採取其他人的建議,也許可以將它們結合起來。

我的想法是,您可能需要一個準備連接的文件,然後聲明一個全局變量並使用該變量來執行所有查詢。

+0

這是我通常的做法,雖然上面的'工廠方法'在我看來最好 – 2010-04-01 14:23:32

2

我使用存儲庫模式(http://martinfowler.com/eaaCatalog/repository.html)將我的所有數據庫和SQL代碼放入一小組負責在數據庫和域對象之間進行轉換的類中。這使所有其他代碼不會有冗餘數據庫連接代碼或SQL查詢。

我用這樣的:

$criteria = new UserCriteria(); 
$criteria->active = true; 
$repository->getUsers($criteria); // repo connects to DB and returns array of user objects