问题标签 [nl2br]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 为什么 nl2br 很多
我创建了一个在输出时使用 nl2br() 的 bbcode 解析器。但是,为什么会是这个结果
输入
输出
我的php函数
我的测试:在 [table] 和 [/table] 之间,显示六次 \n。所以在 [table] 出现六次之前
我该如何解决?
我可以跳过不在 [table] [ul] [li] 中使用 nl2br 而是在 [tr] [li] 中使用吗?
或者任何人都可以给我更多建议
谢谢。
php - PHP 在使用 nl2br 时忽略空白字符的新行
如果新行只包含空白字符或者是空字符串,使用nl2br时如何忽略?
php - 使用换行符安全地存储 textarea 输入并保留换行符
我在将用户提交的演示文稿作为 TEXT 字段存储在数据库中时遇到问题。它不允许任何 HTML,但应保留换行符。
因此,例如,如果用户使用 textarea 作为输入法从表单提交这样的演示文稿:
这是第 1 行
这是第 3 行
这是第 4 行
它应该完全像那样输出,并在此过程中从任何 HTML 中清除输入。
存储过程:
并在获取后输出:
它以这样的方式存储在数据库中:
并在页面上显示为:
我想要的是在用户提交时显示的演示文稿,保留换行符,清除任何 HTML 并安全地存储在数据库中。
我已经尝试过 strip_tags、stripcslashes 等,但我仍然无法让它工作..
有谁能帮忙?
提前致谢。
php - 如何在 php echo 中添加新行
我数据库中故事内容的文本是:
I want to add\r\nnew line
(没有报价)
当我使用:
替换为\r\n
,br
它不起作用。浏览器仍然显示\r\n
. 当我查看源代码时,\r\n
它仍然存在,br
也无处可寻。这很奇怪,因为当我nl2br
使用简单的代码测试函数时:
它确实有效。你能告诉我为什么它不起作用吗?太感谢了。
angularjs - 如何在Angularjs中一起使用nl2br和linky过滤器?
我正在尝试使用多个过滤器,如下所示,
什么都没有。但是,当我如下更改过滤器的顺序时
linky 有效,但 nl2br 无法将换行符转换为 br。
以下实现可用于 nl2br:
php - 使用 $_SESSION 在 Textarea 上显示 \r\n\
例如,如果我提交此文本并将其放入 $SESSION:
1
号线 2号线
当我尝试在 textarea 中再次显示此文本时,我的文本如下所示:
第 1 行\r\n\第 2 行
我的代码是:(文本区域)
我的 PHP(我发送 textarea ):
我的 PHP(将会话放入变量:$corpo)
我尝试使用replace 或str_replace,但没有任何效果。
有人可以帮助我吗?
php - 显示文本还是 nl2br()?
当我想到它时,为什么我应该使用函数 nl2br() 而不是使用标签<pre></pre>
?
谢谢。
php - PHP 电子邮件中的新行显示为“\r\n”
我有一个标准的 html 表单:
提交后,将使用以下 PHP 通过电子邮件发送:
这可以很好地发送电子邮件,但原始消息中的任何新行都会打印为“\r\n”。
例如,用户在表单中输入以下内容:
这个
是
一个
测试。
但是电子邮件中传递的是:
这个\r\n\r\nis\r\n\r\na\r\n\r\n测试。
我曾尝试nl2br
在 PHP 代码中的多个位置使用,但没有任何效果。电子邮件以纯文本形式发送,因此<br>
无论如何都无法正常工作。我想暂时保留mysql_escape_string
,但还要保留原始消息中的回车。
blade - 如何在 Laravel 5 Blade 中使用 nl2br()
所以我想在使用刀片模板引擎时保留数据库中的换行符。我想出了这个想法
有用。但它看起来像是一个不必要的复杂解决方案。有没有更好的办法?
css - 应该如何处理 bbcode 中的换行符?
我正在使用 PECL bbcode 扩展来定义一组我允许用于论坛的标签。我已经实现了http://www.bbcode.org中描述的几乎所有标签。
论坛用户已经开始期望,当他们在输入字段中换行时,他们的帖子也会换行。我正在努力做到这一点。
nl2br()
方式_
nl2br()
非常适合让浏览器在用户键入时使用换行符,因为它会找到换行符并<br />
在其中抛出标签以使浏览器也使用换行符。但这会给一些更复杂的标记带来麻烦。
例如:
结果是
这会在任何地方抛出空格。出于同样的原因,表格也有类似的问题。此外,任何实际显示空格的标签(例如<pre><code>code goes here</code></pre>
)都会被双倍行距。恶心。
CSS方式
CSS 有white-space
一些规则可以在这些情况下派上用场。如果我们将所有论坛帖子放在一个.bbcode
元素中,然后只包含样式表规则
然后浏览器将保留换行符,折叠其他空格并换行。这听起来很理想。但是,列表项等仍然会出现这种双倍行距问题,因为浏览器会在每个</li>
.
我们可以通过定义来解决其中的一些问题:
这缓解了列表和表格中的问题。但是,现在换行符只出现在帖子的根元素中,因此在例如表格单元格中使用换行符是行不通的。
我该怎么做?方法
我真正想要的是两种效果的组合:
- 当源在所有标签之外换行时,浏览器会换行
- 当源在块级或结构标签的关闭或打开之后不立即换行时,浏览器会换行
理想情况下,我认为[li]some\ntext[/li]
应该导致两行,[li]sometext[/li]\n
应该只导致一行,并且[i]sometext[/i]\n
应该导致两行。
这样的事情是怎么做的?或者更确切地说,人们通常在使用 bbcode 的论坛上做什么?我可能会编写一个函数,在其中定义<br />
应该插入 a 的所有情况,这闻起来很像重新发明许多轮子。