php - 检测表格中的段落

标签 php

如何检测表单中有不同的段落?在这个例子中,如果用户写了不同的段落, echo 会把所有的放在一起。我试过 white-space:pre 但它没有用。我不知道我还能做些什么来用 <p> 回应文本?

CSS:

#text {  
    white-space:pre;
}

HTML:

<form action='normal-html.php' method='post'> 
<textarea id="text" name='text' rows='15' cols='60'></textarea> <br/> 
<input type='submit' value='Convertir a html' /> 
</form> 

<br />

<?php
$text = $_POST[text];
echo $text;
?>

最佳答案

这听起来像是 http://php.net/manual/en/function.nl2br.php 的工作

string nl2br ( string $string [, bool $is_xhtml = true ] )

Returns string with '<br />' or '<br>' inserted before all 
newlines (\r\n, \n\r, \n and \r). 

您可以在回显数据时使用它,这样您就永远不会更改数据库中的内容 - 或者您可以在将用户输入保存到数据库时简单地更改它。就我个人而言,我是第一个选项的粉丝,但无论哪种方式最适合您的应用程序。

编辑:如果您只想使用 <p>标签,您也可以使用 str_replace 执行此操作:

$text = '<p>';
$text.= str_replace('\n', '</p><p>', $_POST[text]);

\n一般是换行,看怎么读,可能需要用\r\n字符串替换将完成剩下的工作。这将留下备用 <p>在字符串的末尾,但您会看到它的去向。

关于php - 检测表格中的段落,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18534204/

相关文章:

php - Yii Create Command 无法从 select 获取硬编码值

php - 如何使用 GROUP mysql bind_param 计算行数?

php - 这个 jquery 帖子没有显示 html?

php - 堆叠算法 - 在尽可能小的区域堆叠 3d 对象

php - Active Directory 与 Wordpress 和 LDAP 集成

php - 表单数据和按钮在同一个_POST中

php - 使用InnoDB引擎在mysql中插入单行时是否需要事务?

php - 在 Woocommerce 页面中更改 &lt;title&gt;

php - 回显 '<pre>' 以保留中断与中断字冲突

php - 记录 Amazon SES 消息 ID