Fonction PHP htmlentities()
Exemple
Convert characters to HTML entities:
<?php $str = "<? W3S?h????>"; echo htmlentities($str); ?>
Voici la sortie HTML du code ci-dessus (voir le code source) :
<!DOCTYPE html> <html> <body> <© W3Sçh°°¦§> </body> </html>
Sortie du navigateur du code ci-dessus :
<? W3S?h????>
Définition et utilisation
La fonction htmlentities() convertit les caractères en entités HTML.
Avis :Pour convertir les entités HTML en caractères, utilisez html_entity_decode() Fonction.
Avis :Utilisez get_html_translation_table() Fonction pour retourner le tableau de traduction utilisé par htmlentities().
Syntaxe
htmlentities(string,flags,character-set,double_encode)
Paramètres | Description |
---|---|
string | Obligatoire. Définir la chaîne de caractères à convertir. |
flags |
Optionnel. Définir comment traiter les guillemets, les codages non valides et le type de document utilisé. Types de guillemets disponibles :
Codage non valide :
Flags supplémentaires définissant le type de document utilisé :
|
character-set |
Optionnel. Une chaîne de caractères définissant le jeu de caractères à utiliser. Allowed values:
Note:In versions of PHP before 5.4, unrecognized character sets are ignored and replaced by ISO-8859-1. Starting from PHP 5.4, unrecognized character sets are ignored and replaced by UTF-8. |
double_encode |
Optional. Boolean value, specifies whether to encode existing HTML entities.
|
Technical details
Return value: |
Return the converted string. If string If the string contains invalid encoding, an empty string is returned unless ENT_IGNORE or ENT_SUBSTITUTE flags are set. |
PHP version: | 4+ |
Update log: |
In PHP 5,character-set The default value of the parameter is changed to UTF-8. In PHP 5.4, new features were added: ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 and ENT_XHTML. In PHP 5.3, a new feature was added: ENT_IGNORE. In PHP 5.2.3, a new feature was added: double_encode Parameters. In PHP 4.1, a new feature was added: character-set Parameters. |
More examples
Example 1
Convert characters to HTML entities:
<?php $str = "Bill & 'Steve'"; echo htmlentities($str, ENT_COMPAT); // Only convert double quotes echo "<br>"; echo htmlentities($str, ENT_QUOTES); // Convert double quotes and single quotes echo "<br>"; echo htmlentities($str, ENT_NOQUOTES); //Ne convertit aucune citation ?>
Voici la sortie HTML du code ci-dessus (voir le code source) :
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Tarzan'<br> Bill & 'Steve' </body> </html>
Sortie du navigateur du code ci-dessus :
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
Exemple 2
En utilisant le jeu de caractères Western European, certains caractères sont convertis en entités HTML :
<?php $str = "Mon nom est Øyvind Øsane. Je suis Norvégien."; echo htmlentities($str, ENT_QUOTES, "ISO-8859-1"); //Ne convertira que les guillemets doubles (pas les guillemets simples), et utilise le jeu de caractères Western European ?>
Voici la sortie HTML du code ci-dessus (voir le code source) :
<!DOCTYPE html> <html> <body> Mon nom est Øyvind Øsane. Je suis Norvégien. </body> </html>
Sortie du navigateur du code ci-dessus :
Mon nom est Øyvind Øsane. Je suis Norvégien.