php中文本换行,PHP文本换行转函数nl2br()与nl2p()文本换行转p段落
很多场合我们只是简单用textarea获取用户的长篇输入,而没有用编辑器。用户输入的换行以“\n”的方式入库,输出的时候有时候会没有换行,一大片文字直接出来了。这个时候可以根据库里的“\n”给文字换行。PHP有自带的函数nl2br(),我们也可以自定义函数nl2p()。
先来看看nl2br() 函数吧。
定义和用法
nl2br() 函数在字符串中的每个新行 (\n) 之前插入 HTML 换行符 (
)。
一个简单的例子:
运行结果的HTML代码:
Welcome to
www.scutephp.com
nl2p
nl2br 有个缺点,比如要用CSS做到段落缩进就比较麻烦,这个时候就需要 nl2p 了。将br换行换成段落p换行,比较简单是直接替换:
" . str_replace("\n", "
", $text) . "";
}
?>
比较详细的函数,可以试下:
/**
* Returns string with newline formatting converted into HTML paragraphs.
*
* @param string $string String to be formatted.
* @param boolean $line_breaks When true, single-line line-breaks will be converted to HTML break tags.
* @param boolean $xml When true, an XML self-closing tag will be applied to break tags (
).
* @return string
*/
function nl2p($string, $line_breaks = true, $xml = true)
{
// Remove existing HTML formatting to avoid double-wrapping things
$string = str_replace(array('
', '', '
', '
'), '', $string);
// It is conceivable that people might still want single line-breaks
// without breaking into a new paragraph.
if ($line_breaks == true)
return '
'.preg_replace(array("/([\n]{2,})/i", "/([^>])\n([^\n
", ''), trim($string)).'';
else
return '
'.preg_replace("/([\n]{1,})/i", "\n
", trim($string)).'';
}
本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉
本文系统来源:php中文网
php中文本换行,PHP文本换行转函数nl2br()与nl2p()文本换行转p段落相关推荐
- 在html中怎么在按回车的时候换到下一个文本框_史上最全的HTML、CSS知识点总结,浅显易懂。适合入门新手...
一,html+css基础 1-1 Html和CSS的关系 学习web前端开发基础技术需要掌握:HTML.CSS.JavaScript语言.下面我们就来了解下这三门技术都是用来实现什么的: 1. HTM ...
- Android中实现为TextView添加多个可点击的文本
这篇文章主要介绍了Android中实现为TextView添加多个可点击的文本,可实现类似Android社交软件显示点赞用户并通过用户名称进入该用户主页的功能,是非常实用的技巧,需要的朋友可以参考下.具 ...
- R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置x轴的标签文本使用粗体字体)
R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置x轴的标签文本使用粗体字体) 目录
- R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置y轴的标签文本使用粗体字体)
R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置y轴的标签文本使用粗体字体) 目录
- R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,使x轴和Y轴的标签文本都使用粗体字体)、注意是轴标签而非轴标题
R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,使x轴和Y轴的标签文本都使用粗体字体).注意是轴标签而非轴标题 目录
- wxpython中的所有文本框都是TextCtrl,不同的形式的文本框通过样式来实现,下面创建了一个密码输入框...
''' wx.TE_CENTER:控件中的文本居中. wx.TE_LEFT:控件中的文本左对齐.默认行为. wx.TE_NOHIDESEL:文本始终高亮显示,只适用于Windows. wx.TE_PA ...
- tensorflow包_在Keras和Tensorflow中使用深度卷积网络生成Meme(表情包)文本
作者 | dylan wenzlau 来源 | Medium 编辑 | 代码医生团队 本文介绍如何构建深度转换网络实现端到端的文本生成.在这一过程中,包括有关数据清理,训练,模型设计和预测算法相关的内 ...
- python中气泡图文字标签_Excel中制作气泡图及为气泡图的系列数据点添加文本数据标签...
Excel中制作气泡图及为气泡图的系列数据点添加文本数据标签 时间:2014-08-01 作者:snow 来源:互联网 Excel中的散点图可以显示两组数据之间的关系,而气泡图则可以显示三组数 ...
- linux中vim文本编辑器的默认模式是,Linux 下 vi/vim 文本编辑器超详细使用指南
Linux下的编辑器最经常使用的就是vim或者vi文本编辑.vi 和vim 编辑器的区别是vim是vi的改进版本,在vi 编辑器的基础上上扩展了不少实用的功能. 大多数的linux/unix 发行版本 ...
- 怎么在matlab 中制表符,matlab中用fprintf怎么写入空格 、制表符,回车换行等符号?...
空格就是空格 制表符是\t 回车换行是\n (在window系统,一般回车换行要用连个符号\r\n) 例如: fprintf()函数,比如 x = 0:.1:1; A = [x; exp(x)]; f ...
最新文章
- 【OSX】build AOSP 2.3.7时的build error解决
- 倒计时一天 坚果智能影院让家用投影投出你的新生活主义
- linux watchdog demo hacking
- Windows Server 2008R2使用web方式修改域账户密码
- 凯盛机器人_机器人登场!水泥发运告别人工,粉尘危害降至最低
- HDU - 3068 最长回文(manacher)
- python123登录网页版_Python模拟登录验证码(代码简单)
- hashmap时间和空间复杂度_Python算法 00--时间复杂度和空间复杂度
- Java程序员最常犯的 10 个错误
- FarPoint Spread For .Net 4.0
- 一键生成人脸像素图,还能上传到动森!这个项目很好玩
- mysql中的extra是什么意思_1130mysql explain中的type列含义和extra列的含义
- 17 java 存在的问题(转)
- 联想服务器查看运行状态,服务器硬件批量监控工具
- linux分区文件ext4和ext3,在Windows 下读取 Linux 的 ext3/ext4 格式分区 -Ext2Read和Ext2Fsd...
- 地区三级联动数据库(中国行政区划分数据库)【2018年1月】
- python+opencv代码给证件照换底色
- 利用Scrapy编写“1024网站种子吞噬爬虫”,送福利
- 【数据库】关系数据模型
- Leetcode题347、前K个高频元素(Python题解)Amazon面试题
热门文章
- python网络图可视化_蜘蛛网图实现Python可视化的方法
- Python处理Excel文件(一)
- [笔记]深入解析Windows操作系统《一》概念和工具
- 服务器操作系统详解,深入解析Windows操作系统之总体架构
- 使用ComponentOne C1WebGrid控件
- Matlab2012b安装步骤(附带Matlab2012b破解码及序列号)
- BP神经网络及其app设计
- 电子设计大赛可以用linux开发板嘛,【一转再转】电子设计大赛应该怎么准备?...
- java le下载安装_JCreator LE
- gear操作系统 基于web的linux开放平台,支持Linux操作系统 开源飞机模拟器FlightGear...