[eside-ghost] Pregunta PHP: caracteres especiales a UTF-8 y a plano

Aitor Gomez Goiri tulvur en gmail.com
Vie Jul 11 13:52:36 CEST 2008


Rafa - EB2DJB(e)k dio:
> Kaixo!
>
> Tengo un problema con el PHP que me hace el feed de uno de los podcast.
>
> iTunes, no admite especiales. Ni acentos, ni aunque vayan en UTF-8. Nada.
> Asi que si pone "camión" mas vale que le pases "camion" y 
> "camión" tampoco le vale
>
> ¿Hay alguna funcion para que un acento lo convierta en su vocal no 
> acentuada? He encontrado una que pasa de acento a utf-8 pero ya os 
> digo que nada de nada.
Aupa,

Si existe no la conozco.

Si no la encuentras, siempre podrías hacer algo parecido a lo que pego 
abajo (sacado de 
http://php.net/manual/en/function.get-html-translation-table.php#76564). 
Es un rollo porque tienes que definir tu las equivalencias, pero que 
pese a ello me ha parecido bastante elegante.

<?php
function get_html_translation_table() {
    $trans = get_html_translation_table(HTML_ENTITIES); // reaprovechas 
los ya definidos
    $trans['euro'] = '&euro;';    // euro currency symbol
    $trans['á'] = 'a';
    $trans['é'] = 'e';
    $trans['í'] = 'i';
    $trans['ó'] = 'o';
    $trans['ú'] = 'u';
    $trans['à'] = 'a';
    $trans['è'] = 'e';
    $trans['ì'] = 'i';
    $trans['ò'] = 'o';
    $trans['ù'] = 'u';
    ksort($trans);
    return $trans;
}

$trans = get_html_translation_table();
echo strtr('á é í ò ù euro', $trans);
?>


Un saludo,

+---------------------------+
| Aitor Gomez Goiri         |
| email: aitor en twolf.eu     |
| web:   www.twolf.eu       |
+---------------------------+



Más información sobre la lista de distribución eside-ghost