2011-10-14 42 views
3

我即將開始使用MySQL作爲後端在PHP中編寫站點。我必須做出的第一個決定之一是將網站設置存儲在數據庫表格還是XML文件中。我想將它們存儲爲鍵/值對,而不管我使用哪個存儲。這可能是最靈活和最好的方式。用於存儲設置的XML或數據庫表

由於兩種方式的實現和使用相對簡單,我擔心的是性能。哪一個更快?我應該使用哪一個?爲什麼?

PS:將設置存儲在.ini文件中有多容易?它們可以通過PHP腳本輕鬆更改,而不是由用戶/ sysadmin手動更改?另外,如果我將設置存儲在一個mysql表中,sysadmin可以輕鬆地將該表(非常小)的表緩存在RAM中。他可以用XML文件做到這一點嗎?

+0

建議:如果你有其他的細節/問題。編輯你的帖子,不要添加評論 –

+0

修復,謝謝你的建議。 –

+0

替代品:YAML –

回答

1

我假定配置是每個用戶。首先,我會建議你寫一個包裝類,它將訪問配置。這樣你只能改變一個類中配置的核心而不是所有的代碼。

class configuration { 
    public function get_user_configuration() { 
    // return users configuration 
    } 
} 

我認爲將配置存儲在數據庫中會更容易。因爲那麼配置可能會每天備份並可以輕鬆導出。

緩存這個配置是個好主意。最簡單的方法是將其緩存在會話中。你也可以嘗試memcache或APC。

+0

配置不是每個用戶,它是網站的全部設置(如最大用戶數,開放/關閉註冊,接受捐贈等)。用類訪問和/或修改設置的想法非常好,謝謝。 –

1

在任何情況下,將其存儲在數據庫中都有意義。如果您想要並加載該文件,您仍然可以在設置發生更改時將其緩存到(XML)文件。所以應用程序永遠不會查詢數據庫的設置。

相關問題