23/05/2012, 21:02:15
Code :
[== Indéfini ==]
private function jqfu_remove_accents($str, $charset='utf-8')
{
$str = htmlentities($str, ENT_NOQUOTES, $charset);
$str = preg_replace('#&([A-za-z])(?:acute|cedil|circ|grave|orn|ring|slash|th|tilde|uml);#', '\1', $str);
$str = preg_replace('#&([A-za-z]{2})(?:lig);#', '\1', $str); // pour les ligatures e.g. 'œ'
$str = preg_replace('#&[^;]+;#', '', $str); // supprime les autres caractères
return $str;
}
private function jqfu_clean_filename($str){
$str = preg_replace('#[^A-za-z0-9\._\-]#', '_', $str);
return $str;
}
done (en local). Le premier code est issu du net, apparemment un
Code :
$str = strtr($str, 'ÁÀÂÄÃÅÇÉÈÊËÍÏÎÌÑÓÒÔÖÕÚÙÛÜÝ', 'AAAAAACEEEEEIIIINOOOOOUUUUY');
$str = strtr($str, 'áàâäãåçéèêëíìîïñóòôöõúùûüýÿ', 'aaaaaaceeeeiiiinooooouuuuyy');
n'est pas une solution http://www.weirdog.com/blog/php/supprime...ntues.html
Du coup tout ce qui n'est pas lettre/numéro/underscore/point et tiret-6 sont remplacés par un underscore en live. Je penses que c'est assez sécure ainsi non ?