Esta es una función de php que convierte una cadena de texto que puede contener cualquier caracter extraño en una url con sólo letras y números. Ideal para crear urls.
function quitar_cosas_raras($s)
{
$s = ereg_replace(«[áàâãª]»,»a»,$s);
$s = ereg_replace(«[ÁÀÂÃ]»,»A»,$s);
$s = ereg_replace(«[ÍÌÎ]»,»I»,$s);
$s = ereg_replace(«[íìî]»,»i»,$s);
$s = ereg_replace(«[éèê]»,»e»,$s);
$s = ereg_replace(«[ÉÈÊ]»,»E»,$s);
$s = ereg_replace(«[óòôõºö]»,»o»,$s);
$s = ereg_replace(«[ÓÒÔÕÖ]»,»O»,$s);
$s = ereg_replace(«[úùûü]»,»u»,$s);
$s = ereg_replace(«[ÚÙÛÜ]»,»U»,$s);
$s = ereg_replace(«[<>!¡¿?=()/\%&$\·\»|#¬’^+*`¨´:;,.]»,»»,$s);
$s = str_replace(«[«,»»,$s);
$s = str_replace(«]»,»»,$s);
$s = str_replace(«{«,»»,$s);
$s = str_replace(«}»,»»,$s);
$s = str_replace(«ç»,»c»,$s);
$s = str_replace(«Ç»,»C»,$s);
$s = str_replace(«ñ»,»n»,$s);
$s = str_replace(«Ñ»,»N»,$s);
$s = str_replace(«@»,»o»,$s);//limpiamos todos los caracteres invalidos
$s= ereg_replace(«[^ A-Za-z0-9_]», «», $s);$s = str_replace(» «,»-«,$s);
return $s;
}