abstract:<?php /** * 字符串中的html标签过滤与转换 * 1. nl2br():在换行符\n前插入html换行标记<br> * 2. htmlspecialchars(),将代码中的单双号号,&符与<和>转为html实体字符,不解析 * 反操作: ht
<?php /** * 字符串中的html标签过滤与转换 * 1. nl2br():在换行符\n前插入html换行标记<br> * 2. htmlspecialchars(),将代码中的单双号号,&符与<和>转为html实体字符,不解析 * 反操作: htmlspecialchars_decode(): 与htmlspecailchars()功能相反,将实体字符进行解析还原 * 3. htmlentities(): 将所有的html标记全部转实体,包括了htmlspecailchars中的标记,功能更强大 * 反操作: html_entity_decode() * 4. strip_tags(): 过滤掉所有的html或php标记,可以设置允许保留的标记,很实用 */ //在页面输出未经解析的html源码 $str = "我的家乡——东北的<span style='color:red;'>松花江</span>上"; echo htmlspecialchars($str) ,'<hr>'; //1. nl2br() $str1 = "我的家乡 \n——东北的松花江上"; //$str1 = "我的家乡 <br> \n——东北的松花江上"; echo $str1,'<br>'; echo nl2br($str1) ,'<hr>'; //2. htmlspecialchars() 不解析html,只转换标签。对防止代码运行有作用。 //htmlspecialchars_decode() 函数把预定义的 HTML 实体转换为字符。 $str2 = "我的家乡——东北的<span style='color:red;'>松花江</span>上"; echo $str2.'<br>'; echo htmlspecialchars($str2). '<br>'; echo htmlspecialchars_decode($str2). '<hr>'; //3. htmlentities() 将所有的html标记全部转换成实体 反操作 html_entity_decode() $str3 = "我的家乡——东北的<span style='color:red;'>松花江</span>上"; echo htmlentities($str3).'<br>'; echo html_entity_decode($str3).'<hr>'; //4. strip_tags() 过滤所有的html标签 $str4 = '<p>php是世界上<span style="color:red">最好的</span>编程语言吗?</p>'; echo $str4, '<br>'; echo strip_tags($str4) ,'<br>'; //参数可以设置保留的标签,保留下了span,去掉了P标签 echo strip_tags($str4,'<span>') ,'<hr>';
Correcting teacher:西门大官人Correction time:2019-03-30 10:46:12
Teacher's summary:总结 非常好,例子列举比较恰当,也很能说明问题。