PHP文章存储表,php – 如何在数据库中划分长文章和存储以便于检索和分页?

假设它是一篇很长的文章(比如10万字),我需要编写一个PHP文件来显示文章的第1,2或38页,

display.php?page=38

但是每个页面的单词数量会随着时间的推移而变化(例如,如果每页500字,但是下个月,我们可以轻松地将其更改为每页300字).将长文章和商店分成数据库的好方法是什么?

附:如果我们想要显示500个单词但包括整个段落,则设计可能会更复杂.也就是说,如果我们已经显示了单词480,但段落还剩下100个单词,那么即使它超过500个字的限制,也要显示那100个单词. (然后,下一页不应该再显示那100个单词).

解决方法:

我会通过在保存它们时分解chuks上的文章来做到这一点.保存脚本会使用您设计的任何规则拆分文章,并将每个块保存到表中,如下所示:

CREATE TABLE article_chunks (

article_id int not null,

chunk_no int not null,

body text

}

然后,当您加载文章的页面时:

$sql = "select body from article_chunks where article_id = "

.$article_id." and chunk_no=".$page;

每当您想要更改将文章拆分为页面的逻辑时,您运行的脚本会将所有块拉到一起并重新拆分它们:

UPDPATE:给出建议我认为你的应用程序是读密集型而不是写密集型,这意味着文章的阅读频率高于写入

标签:php,database,database-design,schema

来源: https://codeday.me/bug/20190610/1214830.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值