Utilizo la clase de EZPDF de R&OS para crear reportes con php en formato pdf, la creación de dichos reportes es un exito, pero tengo un problemilla, el cual es que cuando saco los valores de la BD, los caracteres como á, é, í, ó, ú me salen en cogigo como este ó = ó, para el caso de la O, ya he probado de todo, la codifcaion tanto a la hora de almacenar como sacar de BD es utf8, igual en la BD, probe con htmlentities y peor, aparte de eso estuve investigando y encontre que el problema era el pdf, entonces cree una funcion para corregir esos caracteres, la cual funciona con todos menos con los que se saco de BD....
dejo funcion para que se vea:
Código PHP:
//Funcion para decodificar
define("UTF_8", 1);
define("ASCII", 2);
define("ISO_8859_1", 3);
function codificacion($texto)
{
$c = 0;
$ascii = true;
for ($i = 0;$i<strlen($texto);$i++) {
$byte = ord($texto[$i]);
if ($c>0) {
if (($byte>>6) != 0x2) {
return ISO_8859_1;
} else {
$c--;
}
} elseif ($byte&0x80) {
$ascii = false;
if (($byte>>5) == 0x6) {
$c = 1;
} elseif (($byte>>4) == 0xE) {
$c = 2;
} elseif (($byte>>3) == 0x14) {
$c = 3;
} else {
return ISO_8859_1;
}
}
}
return ($ascii) ? ASCII : UTF_8;
}
function utf8_decode_seguro($texto)
{
return (codificacion($texto)==ISO_8859_1) ? $texto : utf8_decode($texto);
}
$a="Ascii";
$b="ISO-8859-1: áéíóú";
$c=utf8_encode($b);