PHP htmlcaratteri speciali() Funzione
❮ Riferimento alla stringa PHP
Esempio
Converti i caratteri predefiniti "<" (minore di) e ">" (maggiore di) in entità HTML:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>
L'output HTML del codice sopra sarà (Visualizza sorgente):
<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>
L'output del browser del codice sopra sarà:
This is some <b>bold</b> text.
Definizione e utilizzo
La funzione htmlspecialchars() converte alcuni caratteri predefiniti in entità HTML.
I caratteri predefiniti sono:
- & (e commerciale) diventa &
- " (virgolette doppie) diventa "
- ' (virgoletta singola) diventa '
- < (minore di) diventa <
- > (maggiore di) diventa >
Suggerimento: per riconvertire entità HTML speciali in caratteri, utilizzare la funzione htmlspecialchars_decode() .
Sintassi
htmlspecialchars(string,flags,character-set,double_encode)
Valori dei parametri
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.
|
Dettagli tecnici
Valore di ritorno: | Restituisce la stringa convertita Se la stringa contiene una codifica non valida, restituirà una stringa vuota, a meno che non siano impostati i flag ENT_IGNORE o ENT_SUBSTITUTE |
---|---|
Versione PHP: | 4+ |
Registro delle modifiche: | PHP 5.6 - Modificato il valore predefinito per il
parametro del set di caratteri nel valore del set di caratteri predefinito (nella configurazione). PHP 5.4 - Modificato il valore predefinito per il parametro del set di caratteri in UTF-8. PHP 5.4 - Aggiunti ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 e ENT_XHTML PHP 5.3 - Aggiunti ENT_IGNORE costante. PHP 5.2.3 - Aggiunto il parametro double_encode . PHP 4.1 - Aggiunto il parametro del set di caratteri . |
Altri esempi
Esempio
Converti alcuni caratteri predefiniti in entità HTML:
<?php
$str = "Jane & 'Tarzan'";
echo htmlspecialchars($str, ENT_COMPAT); // Will only convert double quotes
echo "<br>";
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
echo "<br>";
echo htmlspecialchars($str, ENT_NOQUOTES); // Does not convert any quotes
?>
L'output HTML del codice sopra sarà (Visualizza sorgente):
<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>
L'output del browser del codice sopra sarà:
Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Esempio
Converti virgolette doppie in entità HTML:
<?php
$str = 'I love "PHP".';
echo htmlspecialchars($str, ENT_QUOTES); // Converts double and single quotes
?>
L'output HTML del codice sopra sarà (Visualizza sorgente):
<!DOCTYPE html>
<html>
<body>
I love "PHP".
</body>
</html>
L'output del browser del codice sopra sarà:
I love "PHP".
❮ Riferimento alla stringa PHP