Ultimele tutoriale de dezvoltare web
 

PHP htmlentities() Function

<PHP String Reference

Exemplu

Conversia unele caractere pentru entități HTML:

<?php
$str = "<© W3School>";
echo htmlentities($str);
?>

Ieșirea HTML a codului de mai sus va fi (View Source) :

<!DOCTYPE html>
<html>
<body>
&lt;&copy; W3S&ccedil;h&deg;&deg;&brvbar;&sect;&gt;
</body>
</html>

Ieșirea browser-a codului de mai sus va fi:

<© W3School>
Run exemplu »

Definiție și utilizare

htmlentities() funcția convertește caracterele entităților HTML.

Sfat: Pentru a converti entitățile HTML înapoi de caractere, utilizați html_entity_decode() funcția.

Sfat: utilizați get_html_translation_table() funcția pentru a reveni tabelul de traducere utilizat de htmlentities() .


Sintaxă

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

Parametru Descriere
string Necesar. Specifică șirul pentru a converti
flags Opțional. Specifică modul în care să se ocupe de citate, de codificare invalid și tipul de document utilizat.

disponibile stiluri citat sunt:

  • ENT_COMPAT - implicit. Codifică ghilimele duble
  • ENT_QUOTES - Codifică ghilimele duble și single
  • ENT_NOQUOTES - nu codifică citate

Codificare nevalid:

  • ENT_IGNORE - Ignoră codificare nevalidă în loc de a avea funcția de a reveni un șir gol. Ar trebui să fie evitată, deoarece poate avea implicații de securitate.
  • ENT_SUBSTITUTE - Înlocuiesc codare invalid pentru un caracter specificat cu un set de caractere de înlocuire Unicode U + FFFD (UTF-8) sau & # FFFD; în loc de a se întoarce un șir gol.
  • ENT_DISALLOWED - Înlocuiesc puncte de cod care nu sunt valide în doctype specificate cu înlocuire de caractere Unicode U + FFFD (UTF-8) sau & # FFFD;

steaguri suplimentare pentru specificarea DOCTYPE utilizate:

  • ENT_HTML401 - implicit. Manipulați codul ca HTML 4.01
  • ENT_HTML5 - Manipulați cod ca HTML 5
  • ENT_XML1 - Mâner cod XML 1
  • ENT_XHTML - Manipulați cod ca XHTML
character-set Opțional. Un șir de caractere care specifică ce-setat să utilizeze.

Valori permise sunt:

  • UTF-8 - Standard. ASCII multi-octet 8-biți Unicode compatibil
  • ISO-8859-1 - Europa de Vest
  • ISO-8859-15 - Europa de Vest (adaugă semnul euro + literele franceze și finlandeze lipsă în ISO-8859-1)
  • cp866 - DOS-specifice charset chirilică
  • cp1251 - specifice pentru Windows charset chirilică
  • cp1252 - charset specifice pentru Windows pentru Europa de Vest
  • KOI8-R - Rusă
  • BIG5 - chineză tradițională, utilizat în principal în Taiwan
  • GB2312 - chineză simplificată, standard național set de caractere
  • BIG5-HKSCS - Big5 cu extensii din Hong Kong
  • Shift_JIS - Japoneză
  • EUC-JP - Japoneză
  • MacRoman - Caracter-set care a fost utilizat de Mac OS

Note: nerecunoscute de caractere seturi vor fi ignorate și înlocuite cu ISO-8859-1 în versiunile anterioare PHP 5.4. Ca de PHP 5.4, acesta va fi ignorat înlocuit cu UTF-8.

double_encode Opțional. O valoare boolean care specifică dacă pentru a codifica entități html existente sau nu.
  • TRUE - implicit. Va converti totul
  • FALSE - nu va codifica entități html existente

Detalii tehnice

Întoarcere Valoare: Returnează șirul convertit

Dacă șirul conține codificare invalid, acesta va returna un șir gol, cu excepția cazului fie ENT_IGNORE sau steaguri ENT_SUBSTITUTE sunt setate
Versiune PHP: 4+
Changelog: Valoarea implicită pentru parametrul de caractere-set a fost schimbat la UTF-8 în PHP 5

ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 și ENT_XHTML au fost adăugate în PHP 5.4

ENT_IGNORE a fost adăugat în PHP 5.3

Parametrul double_encode a fost adăugat în PHP 5.2.3

Parametrul character-set a fost adăugat în PHP 4.1

Mai multe exemple

Exemplul 1

Conversia unele caractere pentru entități HTML:

<?php
$str = "Jane & 'Tarzan'";
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
?>

Ieșirea HTML a codului de mai sus va fi (View Source) :

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

Ieșirea browser-a codului de mai sus va fi:

Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Run exemplu »

Exemplul 2

Conversia unele caractere pentru entități HTML folosind caractere Western-set european:

<?php
$str = "My name is yvind Åsane. I'm Norwegian.";
echo htmlentities($str, ENT_QUOTES, "ISO-8859-1"); // Will only convert double quotes (not single quotes), and uses the character-set Western European
?>

Ieșirea HTML a codului de mai sus va fi (View Source) :

<!DOCTYPE html>
<html>
<body>
My name is &Oslash;yvind &Aring;sane. I&#039;m Norwegian.
</body>
</html>

Ieșirea browser-a codului de mai sus va fi:

My name is yvind Åsane. I'm Norwegian.
Run exemplu »

<PHP String Reference