ホームページ  >  記事  >  バックエンド開発  >  関数を通じて文字が HTML エンティティになる仕組み

関数を通じて文字が HTML エンティティになる仕組み

醉折花枝作酒筹
醉折花枝作酒筹オリジナル
2021-08-03 16:55:332054ブラウズ

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

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

関数を通じて文字が HTML エンティティになる仕組み

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

看看这个函数的语法。

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

関数を通じて文字が HTML エンティティになる仕組み

需要注意的是:

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>

结果是

関数を通じて文字が HTML エンティティになる仕組み

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

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

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

预定义的字符是:

  • & (和号)成为 &

  • " (双引号)成为 "

  • ' (单引号)成为 '

这个函数的语法格式是

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

関数を通じて文字が HTML エンティティになる仕組み

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

以上が関数を通じて文字が HTML エンティティになる仕組みの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。