首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php字符限制(修剪html段落)

问php字符限制(修剪html段落)
EN

Stack Overflow用户
提问于 2012-02-09 06:28:18
回答 4查看 1.5K关注 0票数 2

我们有自己的博客系统,帖子数据是存储一个原始的html,所以当它从数据库调用时,我们只需回显它,它是完全格式化的,在我们的情况下不需要bb码。我们现在的问题是,我们的博客帖子有时太长了,需要修剪。

问题是我们的数据包含html,主要是<font>、<span>、<p>、<b>和其他样式标记。我做了一个php函数来修剪字符,但是它没有考虑html标签。如果trim函数修剪博客,它不应该修剪标签,因为它会弄乱整个页面。该函数需要能够关闭html标记,如果它们被修剪。有没有一个函数可以做到这一点呢?或者是一个我可以从它开始和构建的函数?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-02-09 06:35:20

这里有一个很好的truncating text while preserving HTML tags示例。

票数 2
EN

Stack Overflow用户

发布于 2012-02-09 06:31:52

有一个strip_tags可以去掉所有的超文本标记语言标签,但除此之外就没什么了。

顺便说一句,这并不是一件容易的事情,您必须实际解析HTML来找出哪些标记是打开的--这是最健壮的方法。还有,don't use a regular expression。

票数 2
EN

Stack Overflow用户

发布于 2012-02-09 06:33:30

正确的解决方案是不将显示信息存储在数据库层中。

如果做不到这一点,您可以使用CSS overflow属性:打印整个帖子,然后让显示层处理它的大小以适合它。这通过将调整大小(显示问题,而不是内容问题)放到显示层中,从而减轻了在数据库中设置格式信息的问题。

如果没有该,您可以解析并“向上舍入”或“向下舍入”到最近的标记边界,然后插入完成所在块所需的标记关闭字符。

另一种选择是iframe内容。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9202502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档