2011-08-14 55 views
1

我正在尋找能夠從管理面板設置一些基本站點範圍設置(可能是布爾值或只是小數字)的最有效方法,他們在每個頁面上檢索(通過通用文件)並存儲在PHP變量中。存儲全局設置,可通過PHP中的管理頁面進行配置

具體來說,我在我的網站上有一個積分系統,我希望能夠讓其他網站管理員能夠設置獎勵和成本,並讓它們已經存儲在每個頁面上的變量中。

看成爲一種流行的論壇軟件是如何存儲的設置,它們使用行ID,並一個MySQL表。 名稱是選項的名稱,而的值是是選定的值。我沒有看看它是如何在代碼本身中被檢索到的,並且如果在公共/頭文件的每次運行中都檢查過它。在我看來,在每個頁面上進行MySQL查詢以便很少改變的設置不會很有效。

我考慮的另一件事是有一個文本文件,只存儲在JSON的選項。

讓我知道這些想法是否有用,或者有什麼更理想的東西。我對任何事情都很開放。

回答

1

存儲應用程序範圍的配置設置確實存在數據庫的誤用。然而,性能懲罰本身通常可以忽略不計。

最有效的方法當然是一個數據文件。取而代之的json_encode你還不如用serialize或只產生一個有效的.PHP腳本:

file_put_contents("config.php", 
    '<?php $config = ' . var_export($config_array, 1) . '; ?>'); 

一個簡單的管理UI的努力,同樣是小,如果你只需要一些設置。

對於一個矯枉過正的解決方案看http://milki.include-once.org/genericplugins/genconfig.html

+0

謝謝!那好極了! – Carson

0

我看過一個php網站,它在php文件中存儲了常見的設置變量。 然後在其他php文件中require_once();

+0

是的,但我想有通過一個管理控制檯,以編輯它們的能力。你認爲編輯容易嗎? – Carson