Rumah > pembangunan bahagian belakang > tutorial php > php htmlspecialchars()和strip_tags函数的区别

php htmlspecialchars()和strip_tags函数的区别

怪我咯
Lepaskan: 2023-03-08 06:38:01
asal
2056 orang telah melayarinya

php htmlspecialchars()和strip_tags函数都是格式化HTML代码的,很多人都以为htmlentities跟htmlspecialchars的功能是一样的,但是他们真的是一样的吗,答案是否定的,不然也不会这两个函数的,这篇文章就带大家了解一下php htmlspecialchars()和strip_tags函数的区别

先来看一下htmlspecialchars函数和strip_tags函数的使用实例:

<?php
$str="<a href=&#39;http://www.php.cn&#39;>php中文网</a>";
echo htmlspecialchars($str);
echo "<br><br>";
echo strip_tags($str);
?>
Salin selepas log masuk

代码运行浏览器输出结果:

1.jpg

查看页面源码,结果如下:

<a href=&#39;http://www.php.cn&#39;>php中文网&#39;"</a><br/><br/>php中文网&#39;"
Salin selepas log masuk

从结果可以看出htmlspecialchars() 和strip_tags的区别如下:

区别一:

strip_tags函数使用来去除HTML标签的,而htmlspecialchars并没有去除html标签,只是把标签转换为HTML实例,所以二者之间最大的区别是一个是删除掉HTML标签,一个是将html标签转换为其他字符。

区别二:

如果需要去除HTML标签的字符串里面的标签原来就有错,例如少了大于的符号,在使用strip_tags函数会传回错误,而htmlspecialchars不会有错误出现,依然后转换为HTML实体。

区别三:

在防止XSS攻击时,一般建议使用htmlspecialchars函数,因为strip_tags虽然可以删除HTML标签,但是它不会删除"或'。因此就算你使用了strip_tags,仍然需要使用htmlspecialchars函数来过滤掉"或'

在表单提交或用户留言板里,如果你希望数据原始输出带浏览器,那么请使用htmlspecialchars函数,不要使用strip_tags函数。

【相关文章推荐】

php中htmlspecialchars、strip_tags、addslashes函数的简单介绍

php 去除字符串标签strip_tags() 函数示例详解

Atas ialah kandungan terperinci php htmlspecialchars()和strip_tags函数的区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan