字元如何透過函式成為html實體

fondtiger發表於2021-09-11
上一篇文章中我們瞭解了HTML實體轉換為字元的方法,有需要的請看《》。這次我們向大家介紹字元轉換為HTML實體的方法,有需要的可以參考參考。

之前我們介紹了HTML實體轉換為字元的方法,當然有來就有回,肯定有將字元轉換為HTML實體的方法。我們今天就來介紹一下將字元轉換為HTML實體的兩種方法。

第一種、htmlentities() 函式

我們先來看一個小例子。

<?php
$str = "candy & 'Timi'";
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 &amp; 'Tarzan'<br>
Jane &amp; &#039;Tarzan&#039;<br>
Jane &amp; 'Tarzan'
</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 &lt;b&gt;bold&lt;/b&gt; text.
</body>
</html>

結果是

S8FPP[~$5AEGG]9NGUPWEU0.png

當我們看到b標籤的時候,是不是就知道了這個小例子的結果。是的,結果如我們所想bold這個單詞被加粗了。當然這個小例子它用了htmlspecialchars函式,將字元轉換為預定義好的HTML實體。

下面就讓我們仔細瞭解一下吧。

htmlspecialchars() 函式把一些預定義的字元轉換為 HTML 實體。

預定義的字元是:

  • & (和號)成為 &amp;

  • " (雙引號)成為 &quot;

  • ' (單引號)成為 '

  • < (小於)成為 &lt;

  • > (大於)成為 &gt;

這個函式的語法格式是

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

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

就說到這裡了,有其他想知道的,可以點選這個哦。→ →

以上就是字元如何透過函式成為html實體的詳細內容,更多請關注php中文網其它相關文章!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2508/viewspace-2827621/,如需轉載,請註明出處,否則將追究法律責任。

相關文章