par
Yosh » 22 janv. 2009, 15:57
Bonjour à tous,
Voici mon problème, j'ai créé un script PHP qui importe les données d'un fichier XLS et fait des traitemenst sur les chaines de cractères avant de la réenregistrer.
Tous fonctionne niquel, SAUF lorsque le caractère Œ est présent (idem avec le sigle €), cela me génère une ligne incompréhensible (comme si l'encodage de TOUTE la chaine était changé) avec des carré entre chqaue lettre.
Le seul moyen que j'ai trouvé de changé le Œ en OE est la façon suivante mais c'est crade et ne fonctionne pas bien puisqu'il y a des carré entre chaque lettre.
$data->sheets[0]['cells'][$i][$j] = str_replace("R","OE",$data->sheets[0]['cells'][$i][$j]);
$data->sheets[0]['cells'][$i][$j] = str_replace("S","oe",$data->sheets[0]['cells'][$i][$j]);
Donc d'après mes recherches (ça fait une heure que je suis dessus :/ ) UTF8 ne contiendrai pas ces caractères ?!?!
En fait lorsque je lit le fichier excel (à partir d'un reader excel) je n'arrive pas à détecter la chaine Œ, au lieu de cela je lit R qui correspond à je ne sais quoi.
Précision: tout mon environnement de travail est défini en UTF8.