Funkcja htmlentities() PHP
Przykład
Konwertuj niektóre znaki na encje HTML:
<?php
$str = '<a href="https://www.w3schools.com">Go to
w3schools.com</a>';
echo htmlentities($str);
?>
Wynik HTML powyższego kodu to (Wyświetl źródło):
<a href="https://www.w3schools.com">Go to w3schools.com</a>
Wynikiem powyższego kodu przeglądarki będzie:
<a href="https://www.w3schools.com">Go to w3schools.com</a>
Definicja i użycie
Funkcja htmlentities() konwertuje znaki na encje HTML.
Wskazówka: Aby przekonwertować encje HTML z powrotem na znaki, użyj funkcji html_entity_decode() .
Wskazówka: użyj funkcji get_html_translation_table() , aby zwrócić tabelę tłumaczeń używaną przez htmlentities().
Składnia
htmlentities(string,flags,character-set,double_encode)
Wartości parametrów
Parameter | Description |
---|---|
string | Required. Specifies the string to convert |
flags | Optional. Specifies how to handle quotes, invalid encoding and the used document type. The available quote styles are:
Invalid encoding:
Additional flags for specifying the used doctype:
|
character-set | Optional. A string that specifies which character-set to use. Allowed values are:
Note: Unrecognized character-sets will be ignored and replaced by ISO-8859-1 in versions prior to PHP 5.4. As of PHP 5.4, it will be ignored an replaced by UTF-8. |
double_encode | Optional. A boolean value that specifies whether to encode existing html entities or not.
|
Szczegóły techniczne
Wartość zwrotu: | Zwraca przekonwertowany ciąg. Jeśli jednak parametr ciągu zawiera nieprawidłowe kodowanie, zwróci pusty ciąg, chyba że ustawiono flagi ENT_IGNORE lub ENT_SUBSTITUTE |
---|---|
Wersja PHP: | 4+ |
Dziennik zmian: | PHP 5.6 - Zmieniono domyślną wartość parametru zestawu znaków
na wartość domyślnego zestawu znaków (w konfiguracji). PHP 5.4 - Zmieniono domyślną wartość parametru zestawu znaków na UTF-8. PHP 5.4 - Dodano ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 i ENT_XHTML PHP 5.3 - Dodano stałą ENT_IGNORE. PHP 5.2.3 - Dodano parametr double_encode . PHP 4.1 - Dodano parametr zestawu znaków . |
Więcej przykładów
Przykład
Konwertuj niektóre znaki na encje HTML:
<?php
$str = "Albert Einstein said: 'E=MC²'";
echo htmlentities($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo htmlentities($str, ENT_QUOTES); // Converts double and single quotes
echo "<br>";
echo htmlentities($str, ENT_NOQUOTES); // Does not convert any quotes
?>
Wynik HTML powyższego kodu to (Wyświetl źródło):
Albert Einstein said: 'E=MC²'<br>
Albert Einstein said:
'E=MC²'<br>
Albert Einstein said: 'E=MC²'
Wynikiem powyższego kodu przeglądarki będzie:
Albert Einstein said: 'E=MC²'
Albert Einstein said: 'E=MC²'
Albert
Einstein said: 'E=MC²'
Przykład
Konwertuj niektóre znaki na encje HTML za pomocą zestawu znaków zachodnioeuropejskich:
<?php
$str = "My name is Øyvind Åsane. I'm Norwegian.";
echo htmlentities($str, ENT_QUOTES, "UTF-8"); // Will only convert double quotes (not single quotes), and uses the character-set Western European
?>
Wynik HTML powyższego kodu to (Wyświetl źródło):
<!DOCTYPE html>
<html>
<body>
My name is Øyvind Åsane. I'm Norwegian.
</body>
</html>
Wynikiem powyższego kodu przeglądarki będzie:
My name is Øyvind Åsane. I'm Norwegian.
❮ Odniesienie do ciągów PHP