Problemas de codificación al generar pdf con php
Cuando trabajamos en nuestra pagina web, de todos los inconvenientes que se me han presentado uno de los mas molestos ha sido el de la codificacion de los archivos, ya que como sabemos existen varias formas de codificarlos y si no usamos el correcto se pueden presentarse errores al mostrar los caracteres deseados como las tildes y la ” ñ” por ejemplo. Bien pues para solucionar esto siempre codifico los archivos con utf-8, pero sin embargo, estos errores también invaden la base de datos en donde nos pueden quedar datos guardados con una codificacion que no soporte nuestros caracteres y no nos damos cuenta por que al mostrarlos en pantalla se codifican correctamente. Bueno, el problema en el momento de generar pdfs es que ahi se imprimen los caracteres tal y como se guardaron en la base de datos y para corregir el problema y no tener textos como “canción” o “niÃ+“ podemos usar la función
string html_entity_decode ( string $cadena [, int $estilo_comillas [, string $juego_caracteres ]] ); donde cadena hace referencia a la cadena de entrada o el texto que queremos codificar, estilo_comillas es el segundo parámetro opcional que permite definir lo que debe hacerse con las comillas ’sencillas’ y “dobles”.Podemos asignarle una de tres constantes posibles, siendo el valor por defecto ENT_COMPAT:
| Nombre constante | Descripción |
|---|---|
| ENT_COMPAT | Convierte las comillas dobles y deja intactas las comillas sencillas. |
| ENT_QUOTES | Convierte tanto comillas dobles como sencillas. |
| ENT_NOQUOTES | No convierte ni las comillas dobles ni las sencillas. |
y el juego de caracteres ISO-8859-1 es usado como valor predeterminado para el tercer argumento opcional juego_caracteres . Éste define el juego de caracteres usado en la conversión.
y asi queda solucionado nuestro problema con los PDFs.
Abril 4th, 2009 at 11:59
OMG! I just had a cup of tea and realised I have not updated this since petrol was cheaper than a bottle of Grange!… You would not believe how much it’s costing me. I hope you still love me!.
I am out of it with waiting for a fine young gentleman to propose, homeschooling five children, just generally being an embarrassment to my husband, my day lasts forever from my partner kicking me out of bed to midnight. I am quite the socialite. I need some perspective.
I hope that one day I will make more of an effort to blog more often until the nice men in the white coats come back. Peace! No Joke!.