Exemplo
Converter os caracteres predefinidos "<" (less than) e ">" (greater than) a entidades HTML:
<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars($str);
?>
A saída HTML do código acima será (View Source) :
<!DOCTYPE html>
<html>
<body>
This is some <b>bold</b> text.
</body>
</html>
A saída do navegador de código acima será:
This is some <b>bold</b> text.
Exemplo executar » Definição e Uso
O htmlspecialchars() função converte alguns caracteres predefinidos para entidades HTML.
Os caracteres pré-definidos são:
- & (ampersand) torna-se & amp;
- " (double quote) torna-se & quot;
- ' (single quote) torna-se & # 039;
- < (less than) torna-se & lt;
- > (greater than) se torna & gt;
Dica: Para converter entidades HTML especiais de volta para caracteres, use o htmlspecialchars_decode() função.
Sintaxe
htmlspecialchars( string,flags,character-set,double_encode )
Parâmetro | Descrição |
---|---|
string | Requeridos. Especifica a cadeia de converter |
flags | Opcional. Especifica como lidar com citações, codificação inválido eo tipo de documento usado. Os estilos de citação disponíveis são:
codificação inválido:
flags adicionais para especificar o tipo de documento utilizado:
|
character-set | Opcional. Uma string que especifica qual personagem-configurado para usar. Os valores permitidos são:
Note: não reconhecidos caracteres conjuntos será ignorado e substituído por ISO-8859-1 em versões anteriores ao PHP 5.4. A partir do PHP 5.4, que irá ser ignorado um substituídos por UTF-8. |
double_encode | Opcional. Um valor booleano que especifica se a codificar entidades HTML existentes ou não.
|
Detalhes técnicos
Valor de retorno: | Retorna a string convertida Se a string contém a codificação inválido, ele irá retornar uma string vazia, a menos que o ENT_IGNORE ou bandeiras ENT_SUBSTITUTE são definidas |
---|---|
PHP Versão: | 4+ |
changelog: | O valor padrão para o parâmetro conjunto de caracteres foi alterado para UTF-8 em PHP 5 ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 e ENT_XHTML foram adicionados em 5,4 PHP ENT_IGNORE foi adicionado em PHP 5.3 O parâmetro double_encode foi adicionado em PHP 5.2.3 O parâmetro character-set foi adicionado no PHP 4.1 |
mais Exemplos
Exemplo 1
Converter alguns caracteres predefinidos para entidades 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
?>
A saída HTML do código acima será (View Source) :
<!DOCTYPE html>
<html>
<body>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'<br>
Jane & 'Tarzan'
</body>
</html>
A saída do navegador de código acima será:
Jane & 'Tarzan'
Jane & 'Tarzan'
Jane & 'Tarzan'
Exemplo executar » exemplo 2
Converter aspas duplas para entidades HTML:
<?php
$str = 'I love "PHP" .';
echo htmlspecialchars($str, ENT_QUOTES);
// Converts double and single quotes
?>
A saída HTML do código acima será (View Source) :
<!DOCTYPE html>
<html>
<body>
I love "PHP".
</body>
</html>
A saída do navegador de código acima será:
I love "PHP" .
Exemplo executar » <PHP seqüência de referência