Jump to content

Quando se deve usar html entites?


fnds

Recommended Posts

Presumo que este tópico seja na sequencia da discussão (saudável) entre mim e o djthyrax noutro tópico.

O htmlentities serve unicamente para garantir que o conteudo no seu output contem apenas caracteres que são ignorados pelo interpretador de html.

Cada vez que se quer mostrar texto que esteja dentro de um documento html deve usar-se esta função.

Situações em que é usado frequentemente de forma errada:

-escape de strings para inserir num query SQL

-codificação de urls ( na verdade deve ser usado aqui mas só por efeitos de validação. A função que codifica em 'formato url' chama-se urlencode )

Link to comment
Share on other sites

Lá está. Isto é um erro do passado, a inclusão de caracteres como áíçà como entidades do html hoje em dia não faz qualquer sentido. Em vez disso deve especificar-se o charset devdamente.

O grande problema disso, tendo em conta linguas como o poruguês, castelano ou francês, até nem era mal pensado, usavamos todos o mesmo charset e ficávamos todos muito felizes. Mas iamos para linguas asiáticas... cabum! É que as htmlentities nem sequer suportam o alfabeto cirílico, que é usado em quase toda a europa de leste.

Realmente não faz grande sentido usar o htmlentities() pois existe o htmlspecialchars().

Ainda me lembro de lá por altures de 1996, mesmo até cerca do ano 2000, ver uma pagina em chinês, japonês, hebraico, etc. era impossivel. Hojes felizmente esses problemas foram ultrapassados.

Link to comment
Share on other sites

Lá está. Isto é um erro do passado, a inclusão de caracteres como áíçà como entidades do html hoje em dia não faz qualquer sentido. Em vez disso deve especificar-se o charset devdamente.

O grande problema disso, tendo em conta linguas como o poruguês, castelano ou francês, até nem era mal pensado, usavamos todos o mesmo charset e ficávamos todos muito felizes. Mas iamos para linguas asiáticas... cabum! É que as htmlentities nem sequer suportam o alfabeto cirílico, que é usado em quase toda a europa de leste.

Realmente não faz grande sentido usar o htmlentities() pois existe o htmlspecialchars().

Ainda me lembro de lá por altures de 1996, mesmo até cerca do ano 2000, ver uma pagina em chinês, japonês, hebraico, etc. era impossivel. Hojes felizmente esses problemas foram ultrapassados.

Não te esqueças que ✚ não deixa de ser um html entity.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Não percebi o que quiseste dizer com isso.

Mas pus isso no google e encontrei esta página.

http://www.danshort.com/HTMLentities/index.php?w=warni

afinal o alfabeto cirílico é suportado, mas as linguas asiátias não.

Penso que tendo em conta tecnologias como o unicode, o uso das htmlentities ficaria reduzido a coisas tipo isto:

http://www.danshort.com/HTMLentities/index.php?w=warni

não deixa de ser engraçado e tal, mas penso que não é uma cois amuito útil hoje em dia. Basta ve quão popular são os smileys em formato de imagem.

Link to comment
Share on other sites

Não percebi o que quiseste dizer com isso.

Mas pus isso no google e encontrei esta página.

http://www.danshort.com/HTMLentities/index.php?w=warni

afinal o alfabeto cirílico é suportado, mas as linguas asiátias não.

Penso que tendo em conta tecnologias como o unicode, o uso das htmlentities ficaria reduzido a coisas tipo isto:

http://www.danshort.com/HTMLentities/index.php?w=warni

não deixa de ser engraçado e tal, mas penso que não é uma cois amuito útil hoje em dia. Basta ve quão popular são os smileys em formato de imagem.

Não estou dentro do funcionamento dos charsets asiáticos, mas não vejo qualquer razão para não ser suportado... Anyway, eu queria relembrar que aquilo também era um html entity, não era só os < (por exemplo), e podia especificar um null char com &#0; por exemplo. 😉

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.