php将html转文本的方法-创新互联
这篇文章给大家分享的是有关php将html转文本的方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
创新新互联,凭借十年的成都网站设计、成都网站制作经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有1000多家案例。做网站建设,选创新互联。php将html转文本的方法:首先创建一个PHP示例文件;然后创建一个“HtmlToText”方法;接着使用“preg_replace”等方法将HTML转为TXT文本即可。
PHP将HTML转为TXT文本
需要将HTML转换为TXT文本的内容。
于是翻了翻W3C的PHP手册,因为对PHP的函数库不太熟悉,只找到htmlspecialchar(不对转义字符进行转换)函数和nl2br(将字符串转换成HTML的标签)函数。这显然不是我现在想要的,于是我在自己平时积累下来的PHP函数库中,使用中文进行了一翻搜索,终于发现了一个函数——strip_tags(功能:从字符串中去除HTML和PHP标记)
后来我从网上看到了一个使用PHP写的方法,使用这个方法也可以实现将HTML转为TXT文本,个人觉得也还蛮实用的,在这里分享一下,代码如下:
function HtmlToText($str){ $str=preg_replace("/| |/isU","",$str);//去除CSS样式、JS脚本、HTML注释 $alltext="";//用于保存TXT文本的变量 $start=1;//用于检测<左、>右标签的控制开关 for($i=0;$i ")){//如果检测到>右标签,则使用$start=1;开启截取功能 $start=1; }else if($start==1){//截取功能 if($str[$i]=="<"){//如果字符是<左标签,则使用|替换 $start=0; $alltext.="|"; }else if(ord($str[$i])>31){//如果字符是ASCII大于31的有效字符,则将字符添加到$alltext变量中 $alltext.=$str[$i]; } } } //下方是去除空格和一些特殊字符的操作 $alltext = str_replace(" "," ",$alltext); $alltext = preg_replace("/&([^;&]*)(;|&)/","",$alltext); $alltext = preg_replace("/[ ]+/s"," ",$alltext); return $alltext; }
使用上面这个方法也可以实现将简答的HTML代码转换为TXT文本。
最后说一下htmlspecialchars、nl2br这两个与HTML相关的PHP函数:
htmlspecialchars(不对转义字符进行转换):
实例:echo htmlspecialchars("baidu");//<a href="#">baidu</a>
nl2br(将字符串转换成HTML的标签):
实例:echo nl2br("PHP");//PHP
感谢各位的阅读!关于php将html转文本的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!
文章标题:php将html转文本的方法-创新互联
当前链接:http://scyanting.com/article/idcod.html