Home >Backend Development >PHP Problem >How characters become html entities through functions

How characters become html entities through functions

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-08-03 16:55:332077browse

上一篇文章中我们了解了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>

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

How characters become html entities through functions

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

看看这个函数的语法。

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

How characters become html entities through functions

需要注意的是:

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>

结果是

How characters become html entities through functions

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

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

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

预定义的字符是:

  • & (和号)成为 &

  • " (双引号)成为 "

  • ' (单引号)成为 '

这个函数的语法格式是

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

How characters become html entities through functions

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

The above is the detailed content of How characters become html entities through functions. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn