2010-11-04 48 views
3

我正在做一個小實驗。在過去,大多數人會將配置文件保存在一個php文件中,作爲一堆常量或一個具有屬性loooot的類。現在,我們看到像使用yaml或其他東西的symfony項目。我的問題是:PHP中的配置文件(XML與YAML與PHP文件)

如果你可以從三種不同的方式來存儲你的配置文件:xml,yaml或php文件,你會選擇哪一個?最重要的是:爲什麼?

感謝您的幫助

+1

用於配置的.ini文件也是一個選項,並且可能是最方便用戶的 – stillstanding 2010-11-04 08:33:24

回答

8

對我而言,取決於誰將觸摸該配置。

如果是開發者,那麼PHP文件是最好的,因爲它們不需要任何額外的解析。

如果是技術用戶(例如,其他開發人員或系統管理員),則可以選擇:複雜的配置文件最好使用結構化文件,如XML或YAML,因爲破壞PHP代碼的機會較少如果出現問題(並且您可以報告具體的解析錯誤並提供建議如何解決)。簡單的選擇可以用PHP編寫(但如果有人忘記了引用字符,程序將會以奇怪的錯誤失敗,或者如果錯誤只出現在日誌中,那麼根本沒有錯誤!)。

如果它是最終用戶......那麼在我看來,根本沒有配置文件應該暴露。你需要提供一個安裝程序來處理所有的事情(並且生成機器可讀的配置文件或者把事情寫入數據庫)。

+2

Palantir擊中了頭部。使用最靈活的解決方案,維護配置負責人仍然可以理解。這可以從最靈活/最技術端的php包含文件到最不靈活/技術最低端的全功能Web前端。 – 2010-11-04 07:27:07

+0

+1:我完全同意你的看法!自從我開始使用ASP.NET以來,我一直使用XML很長一段時間,但我總是希望我可以做一些不合時宜的事情。你有一個非凡的迴應 – 2010-11-04 19:51:58