PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

字符如何通过函数成为html实体

醉折花枝作酒筹
醉折花枝作酒筹 原创
2021-08-03 16:55:33 1858浏览

上一篇文章中我们了解了html实体转换为字符的方法,有需要的请看《php函数运用之html实体转换为字符》。这次我们向大家介绍字符转换为html实体的方法,有需要的可以参考参考。

之前我们介绍了HTML实体转换为字符的方法,当然有来就有回,肯定有将字符转换为HTML实体的方法。我们今天就来介绍一下将字符转换为HTML实体的两种方法。

第一种、htmlentities() 函数

我们先来看一个小例子。

<?php
$str = "candy & &#39;Timi&#39;";
echo htmlentities($str, ENT_COMPAT); 
echo "<br>";
echo htmlentities($str, ENT_QUOTES);
echo "<br>";
echo htmlentities($str, ENT_NOQUOTES);
?>

上面代码的 HTML 输出如下:

<!DOCTYPE html>
<html>
<body>
Jane & &#39;Tarzan&#39;<br>
Jane & &#039;Tarzan&#039;<br>
Jane & &#39;Tarzan&#39;
</body>
</html>

上面代码的浏览器输出如下:

24~YRU$A4PBKQBXG[~J@S(G.png

我们可以看这个小案例,它使用了htmlentities函数将字符转换为HTML实体。但是看看函数的参数,发现这些参数并不相同,这不同的参数都是什么意思呢?现在就来具体看看吧。

看看这个函数的语法。

htmlentities(string,flags,character-set,double_encode)

ZY(}`P6%C0EAYYBY_{NOV]7.png

需要注意的是:

htmlentities()使用的翻译表需要用get_html_translation_table()函数来返回。、

这第一种方法介绍完了,我们就来看第二种方法吧。

第二种、htmlspecialchars()函数

首先来看一个小例子。

<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>

上面代码的 HTML 输出如下:

<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>

结果是

S8FPP[~$5AEGG]9NGUPWEU0.png

当我们看到b标签的时候,是不是就知道了这个小例子的结果。是的,结果如我们所想bold这个单词被加粗了。当然这个小例子它用了htmlspecialchars函数,将字符转换为预定义好的HTML实体。

下面就让我们仔细了解一下吧。

htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。

预定义的字符是:

  • & (和号)成为 &

  • " (双引号)成为 "

  • ' (单引号)成为 '

  • > (大于)成为 >

这个函数的语法格式是

htmlspecialchars(string,flags,character-set,double_encode)

KLLY3`%AA(WUT$8@NN[[~PU.png

就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。