文章内容字段用什么类型呢?
1:文章字数可能很长,没人知道会有多长,到底MySQL能保存多少字?
2:太长了post提交能行吗?
3:写文章是不是还是要限制一个长度的呢?
4:不想要被限制。
当文章内容太长了就要进行分页
分页怎么做呢?
1:使用sql语句
使用 MySQL字符串函数:字符串截取 left(), right(), substring(), substring_index()
形如:select left(content,90) as content from post where id = '$id' 这样的吗?
这个字符串截取是MySQL独有的函数吗?PDO有吗?MySQL是按截取长度截的,还是先都取出来再截取呢,如果是再截取那和PHP处理有什么不同呢,效率问题呢?
2:使用分隔符标记分割
这个怎么做呢,是一次性读出来,然后PHP按照分隔符作分割是吗?
关于字数
没人知道多长也还是有个长度的,你仍然要对这个长度做出一个评估,并且选取一个合适的类型
post的尺寸受到多个地方的限制,你的web服务器(nginx或者apache),你的php.ini的配置,甚至还有web服务器和php执行超时时间这两个的限制(因为数据量如果太大的话,传输时间也需要相应增加,很可能会在没有传输完之前就超时了)
是的
你可以把所有限制都去掉,或者改的很大很大很大很大,然后一个post提交你的服务器内存就直接被炸了(比如post一个10G的数据)
关于字符串截取
PHP当然可以截取字符串,不过如果你要处理中文,建议使用mb_开头系列的函数,比如mb_strcut,mb_strlen等等等,避免出现截断半个字的问题
并且分隔也可以很方便的处理,只要你定义好自己的特殊分隔符,你可以看explode函数
但如果你真的是想几十万字的书本级别的文字存储起来的话,你应该考虑分章节存储。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。