1
2
这将在read_more()标记后除去任何非HTML,并通过除去相应的标记将其最小化,同时保持任何标记从标记前开始到标记后结束:
|
2
1
我目前看到的唯一正确的选项是用PHP编写自己的上下文无关语法HTML解析器,它允许您适当地关闭标记(只需在到达read more()时弹出堆栈,并为每个pop添加一个结束标记)。
您会丢失HTML标记,但很容易实现。首页上没有可能的XSS:) |
3
1
与其使用完整的HTML,不如使用可以生成HTML但不需要关闭标记等的众多标记语言中的一种,这样可以更容易地训练用户,并避免接受原始HTML所允许的所有XSS攻击。 PHP Markdown 似乎是一个明显的适合,特别是鉴于您的愿望,避免GNU的GPL。 |
4
1
为了回答对我的评论的评论,我决定让它成为一个答案,这样我就可以利用标记选项。 为什么不能只在结果字符串上使用trim(),找到缺少的open或close元素并适当地附加它,使其成为有效的HTML? 只需前后移动即可找到下一个打开/关闭元素,并修复HTML。
所以,你可以在绳子上前后移动,以获得下一个
理想情况下,每次提交时都需要处理一次,因此您要一直为执行此操作支付代价。 更新:
我忘了提供一个帮助的链接
|
5
1
php-tidy是一个非常轻量和高效的实用程序,可以修复无效的标签。 看一看,我已经在我的应用程序中使用了它并对其进行了基准测试,它工作得很好。 更重要的是,它有许多配置选项来满足您的最佳需求,并处理其他可能的问题,如编码、嵌套的无效标签等。 参见参考文献: http://www.php.net/manual/en/tidy.cleanrepair.php 示例用法:
|
6
0
为什么不使用两个文本区域?切口上下各一个?应该让用户知道发生了什么,并消除您的头痛。
如果你
做
想要使用一个令牌,你应该选择一些更独特的东西。也许吧:
无论如何,如果您想拆分令牌上的字符串,您只需确定令牌在哪里
是
使用
接下来,运行
|
user3127554 · Powershell HTML未格式化 7 年前 |
user1922364 · 从一个页面获取所有链接 7 年前 |
GonzaloXavier · 提取R中<option>标记的内容 7 年前 |
Shafizadeh · 为什么查询与DOM不匹配? 7 年前 |
Athapali · 如何使用jquery获取变量中元素的文本? 8 年前 |
Mona G · html中响应头的jmeter正则表达式提取器 8 年前 |
Paul · Jsoup-从元素中提取html 8 年前 |