当前位置:首页 >> PHP >> PHP基础

字符串中的html标签过滤与转换(PHP字符串4)

  • PHP基础
  • 2019-04-09 17:13:36
  • 人已阅读
简介字符串中的html标签过滤与转换:1 nl2br();2 htmlspecailchars() 和反操作: htmlspecialchars_decode();3 htmlentities() 和 反操作:html_entity_decode();4 strip_tags()很实用的一个函数

字符串中的html标签过滤与转换

1. nl2br():在换行符n前插入html换行标记

2. htmlspecialchars(),将代码中的单双号号,&符与<和>转为html实体字符,不解析

    反操作: htmlspecialchars_decode(): 与htmlspecailchars()功能相反,将实体字符进行解析还原

3. htmlentities(): 将所有的html标记全部转实体,包括了htmlspecailchars中的标记,功能更强大

    反操作: html_entity_decode()

4. strip_tags(): 过滤掉所有的html或php标记,可以设置允许保留的标记,很实用

案例:

//1. nl2br()
$str = "请看下一行内容n 第二行内容在此!";
echo $str, '
'; //没有出现预想中的换行,因为浏览器将n解析为一个空格 //如果想让n产生换行的效果,可以在前面加上一个
标签,尽管你可以使用很多方法实现,但系统提供一个更简单的方案 echo nl2br($str), '
'; //2. htmlspecailchars() 和反操作: htmlspecialchars_decode(), $str2 = '

他是'一个 有"故事"的人

'; //不转义输出 echo '不转义输出:',$str2, '
'; //正常转义: ',",&,<,> echo '正常转义:', htmlspecialchars($str2), '
'; $str3 = "<h1>我也是'一个&nbsp;有"故事"的人</h1>"; //将字符串中html实体字符解析成正常的标签进行显示 echo htmlspecialchars_decode($str3), '

'; //3. htmlentities() 和 反操作:html_entity_decode() $str4 = "

中美&贸$易战,'中国'必胜

"; //echo $str4; echo htmlentities($str4),'
'; $str4 = htmlentities($str4); echo html_entity_decode($str4); echo '
'; //4.strip_tags()很实用的一个函数 $str5 = '

php是世界上最好的编程语言吗?

'; echo $str5; //过滤掉所有的html标签 echo strip_tags($str5),'
'; //保留span标签 echo strip_tags($str5,''),'
';

结果:

str1.jpg

Top