[英]Storing website content: database or file?
我正在建立一個網站,我打算發布各種帖子,比如教程,文章等。我打算用php管理它,但是當涉及到存儲每個帖子的內容時,非常將顯示的文本,有什么更好的選擇:使用單獨的文本文件或將其添加為數據庫中的每個條目?
我沒有看到為什么不直接使用數據庫存儲內容的原因,但這是我第一次使用數據庫而且感覺有點不對勁。
你在這件事上有什么經歷?
好的朋友我再次訪問這個問題是為了那些讀過這個答案的人的利益。 經過大量的反復試驗,我得出的結論是,在數據庫中保存文本非常方便,易於操作。 因此,我的所有數據現在都在數據庫中。 以前我在數據庫中有一些細節,文件部分在文件中,但現在我已將所有數據移到數據庫中。
唯一的問題是,在編輯帖子時,標題,標簽或主題等字段會在簡單的html表單上更改。 但是對於主要內容我創建了一個文本區域。 但是我只需要將它從文本區域剪切並復制到我最喜歡的文本編輯器中。 並在編輯后復制並粘貼回來。
一些好處迫使我把所有東西放在數據庫中
輕松搜索:您可以在文本上運行像mysql LIKE這樣的quires(特別是主要內容)。
EASY ESCAPING:您可以輕松地在數據上運行命令以逃避特殊字符並使其適合顯示等。
從用戶獲取輸入:如果您希望用戶為您提供輸入,則將其輸入保存在數據庫中,將其轉義並在需要時對其進行操作是有意義的。
移動表,備份,合並兩個記錄,按順序排列具有相似內容的帖子等等功能在數據庫中比文件系統更容易。
在文件系統中總是存在丟失文件,不同文件名,不同標題顯示錯誤文件等問題
在顯示之前將其添加到數據庫之前,我不會轉義用戶輸入。 這樣就沒有永久性的更改存儲到文本中。(我不知道是否可以)
事實上我也在做像你這樣的事情。 但是我已經得到了如下所述的結論(幾乎與我上面的答案中提到的相同)。 我希望你現在必須做出決定,但我仍然會解釋它,以便它對未來有用。
我的解決方案:我有一個名為content_table
的表,它包含有關每篇文章,帖子或我寫的任何其他內容的詳細信息。 文章/帖子的主要(文本部分)放在.php
或.txt
文件的目錄中。 當用戶點擊要閱讀的文章時,通過使用數據庫中的信息然后從.txt
文件中拉出文本部分(我稱之為主要內容)來動態創建文章視圖。 該數據庫包含類似_content_id_, 創建日期 , 作者 , 產品類別 (極本成為meta標簽)的信息。
兩個主要好處是:
我根據自己的經驗給出評論,
除了附件,你可以將內容存儲在數據庫中,為什么因為管理內容,備份,恢復,查詢,搜索特別是全文搜索會很容易。
將附加文件存儲在某個文件夾中,並將路徑保留在DB表中。
如果你願意在附件中實現搜索,你可以使用像lucene這樣的搜索引擎來搜索靜態內容。
保持數據庫或文件系統中的附件達到文件的重要級別。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.