Gli ultimi tutorial di sviluppo web
 

PHP htmlentities() Function

<PHP stringa di riferimento

Esempio

Convertire alcuni caratteri in entità HTML:

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

L'output HTML del codice di cui sopra sarà (View Source) :

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

L'uscita del browser del codice qui sopra sarà:

<© W3School>
Esempio Run »

Definizione e l'utilizzo

Il htmlentities() funzione converte i caratteri in entità HTML.

Suggerimento: per convertire le entità HTML torna a caratteri, utilizzare il html_entity_decode() la funzione.

Suggerimento: Utilizzare la get_html_translation_table() funzione per restituire la tabella di traduzione usata da htmlentities() .


Sintassi

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

Parametro Descrizione
string Necessario. Specifica la stringa da convertire
flags Opzionale. Specifica come gestire le citazioni, di codifica non valido e il tipo di documento utilizzato.

Gli stili di citazione disponibili sono:

  • ENT_COMPAT - Default. Codifica solo doppi apici
  • ENT_QUOTES - Codifica virgolette doppie e singole
  • ENT_NOQUOTES - Non codificare qualsiasi citazioni

codifica non valida:

  • ENT_IGNORE - ignora codifica non valida invece di avere la funzione ritorna una stringa vuota. Dovrebbe essere evitato, in quanto può avere implicazioni sulla sicurezza.
  • ENT_SUBSTITUTE - sostituisce codifica non valida per un carattere specificato impostato con un carattere di sostituzione Unicode U + FFFD (UTF-8) o & # FFFD; invece di restituire una stringa vuota.
  • ENT_DISALLOWED - Sostituisce punti di codice non validi nel doctype specificata con un carattere di sostituzione Unicode U + FFFD (UTF-8) o & # FFFD;

bandiere aggiuntivi per specificare il tipo di documento utilizzato:

  • ENT_HTML401 - Default. Maneggiare codice come HTML 4.01
  • ENT_HTML5 - Maniglia codice come HTML 5
  • ENT_XML1 - Maniglia codice come XML 1
  • ENT_XHTML - Maniglia codice come XHTML
character-set Opzionale. Una stringa che specifica quale set di caratteri da utilizzare.

I valori consentiti sono:

  • UTF-8 - Default. ASCII compatibile multi-byte a 8 bit Unicode
  • ISO-8859-1 - Europa occidentale
  • ISO-8859-15 - Europa occidentale (aggiunge il simbolo dell'Euro + lettere francesi e finlandesi mancanti in ISO-8859-1)
  • CP866 - DOS-specifici set di caratteri cirillici
  • CP1251 - specifico per Windows charset cirillici
  • CP1252 - charset specifica di Windows per Europa occidentale
  • KOI8-R - Russo
  • BIG5 - cinese tradizionale, utilizzato principalmente in Taiwan
  • GB2312 - cinese semplificato, set di caratteri standard nazionali
  • BIG5-HKSCS - Big5 con estensioni per Hong Kong
  • Shift_JIS - giapponese
  • EUC-JP - Giapponese
  • MacRoman - del set di caratteri che è stato utilizzato da Mac OS

Note: non riconosciuti set di caratteri che saranno ignorati e sostituiti da ISO-8859-1 nelle versioni precedenti a PHP 5.4. Dal PHP 5.4, verrà ignorato una sostituiti da UTF-8.

double_encode Opzionale. Un valore booleano che specifica se per codificare le entità HTML esistente o meno.
  • VERO - Default. Convertirà tutto
  • FALSO - Will not codificare entità HTML esistenti

Dettagli tecnici

Valore di ritorno: Restituisce la stringa convertita

Se la stringa contiene codifica non valida, restituirà una stringa vuota, a meno che l'ENT_IGNORE o bandiere ENT_SUBSTITUTE sono impostati
Versione PHP: 4+
changelog: Il valore predefinito per il parametro personaggio-set è stato cambiato in UTF-8 in PHP 5

ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 e ENT_XHTML sono stati aggiunti in PHP 5.4

ENT_IGNORE stato aggiunto in PHP 5.3

Il parametro double_encode stato aggiunto in PHP 5.2.3

Il parametro di carattere-set è stato aggiunto in PHP 4.1

Altri esempi

esempio 1

Convertire alcuni caratteri in entità 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
?>

L'output HTML del codice di cui sopra sarà (View Source) :

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

L'uscita del browser del codice qui sopra sarà:

Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Esempio Run »

esempio 2

Convertire alcuni caratteri in entità HTML che utilizzano il carattere occidentale-set europeo:

<?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
?>

L'output HTML del codice di cui sopra sarà (View Source) :

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

L'uscita del browser del codice qui sopra sarà:

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

<PHP stringa di riferimento