Esempio
Convertire i caratteri predefiniti "<" (less than) e ">" (greater than) a entità HTML:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>
L'output HTML del codice di cui sopra sarà (View Source) :
<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>
L'uscita del browser del codice qui sopra sarà:
This is some <b>bold</b> text.
Esempio Run » Definizione e l'utilizzo
Il htmlspecialchars() funzione converte alcuni caratteri predefiniti in entità HTML.
I caratteri predefiniti sono:
- & (ampersand) diventa & amp;
- " (double quote) diventa & quot;
- ' (single quote) diventa & # 039;
- < (less than) diviene & lt;
- > (greater than) diviene & gt;
Suggerimento: per convertire entità HTML speciali torna a personaggi, utilizzare il htmlspecialchars_decode() la funzione.
Sintassi
htmlspecialchars( 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:
codifica non valida:
bandiere aggiuntivi per specificare il tipo di documento utilizzato:
|
character-set | Opzionale. Una stringa che specifica quale set di caratteri da utilizzare. I valori consentiti sono:
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.
|
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 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 di cui sopra sarà (View Source) :
<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>
L'uscita del browser del codice qui sopra sarà:
Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Esempio Run » esempio 2
Convertire le virgolette a entità HTML:
<?php
$str = 'I love "PHP" .';
echo htmlspecialchars($str, ENT_QUOTES);
// Converts double and single quotes
?>
L'output HTML del codice di cui sopra sarà (View Source) :
<!DOCTYPE html>
<html>
<body>
I love "PHP".
</body>
</html>
L'uscita del browser del codice qui sopra sarà:
I love "PHP" .
Esempio Run » <PHP stringa di riferimento