Supprimer les apostrophes de Word en php Supprimer les apostrophes de Word en php
Il peut arriver que les apostrophes provenant de Microsoft Word (par un copier/ Coller dans votre CMS) dans votre base de données soit mal encodées.
Voici la fonction php qui devrait nettoyer la chaîne de caractères.
Il peut arriver que les apostrophes provenant de Microsoft Word (par un copier/ Coller dans votre CMS) dans votre base de données soit mal encodées.
Beaucoup vous dirons de régler le problème à la source, de demander à vos utilisateurs de ne pas copier-coller de texte depuis word mais ce n’est pas toujour facile à appliquer.
Une méthode simple (que je viens d’utiliser pour un projet) consiste à utiliser les fonctions php str_replace pour remplacer l’apostrophe mal encodé et chr pour retourner un caractère à partir de son code ASCII.
Voici donc la fonction php qui devrait nettoyer la chaîne de caractères.
function convert_quotes($string){
$search = array(chr(145),chr(146),chr(147),chr(148),chr(151));
$replace = array("'","'",'"','"','-');
return str_replace($search, $replace, $string);
}
Pour comprendre la fonction, vous pouvez consulter la page ASCII and binary characters
J’ai passé du temps pour contourner ce problème, j’espère que cela pourra vous aider, si vous avez d’autres solutions n’hésitez pas à les poster dans les commentaires
Tags
Laurent HENAFF
Fondateur & dirigeantFondateur de Biper Studio, Laurent pilote depuis 25 ans des projets digitaux où la stratégie prime toujours sur la technique.