Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/11/2007, 14h26   #1
Membre à l'essai
 
Inscription : mai 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 195
Points : 20
Points : 20
Par défaut [CSV] Encodage caractères accentués dans fichier csv excel

Bonjour,

Je ne sais pas si je suis dans le bon forum, mais mon problème est de traiter avec PHP des fichiers csv issus d'excel.

J'enregistre mon fichier en .csv dans excel.

Pour le récupérer dans PHP, j'utilise cette petite fonction :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
function CSV2Array ($openFile, $columnsOnly = false)
{
$handle = fopen ($openFile,"r");
$rows = 0;
while (!feof ($handle))
{
$columns[] = explode ("\r", fgets ($handle));
if ($rows++ == 0 && $columnsOnly) break;
}
fclose ($handle);
return $columns;
}
Problème, les cartactères accentués se transforment en caractères monstrueux, d'où beaucoup de problèmes... Je précise que je suis sur Mac.

Je pense que ce problème est bien connu.

Avez-vous une solution ?

Merci d'avance.
boteha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 14h36   #2
Membre régulier
 
Avatar de Stopher
 
Homme christophe de saint leger
Responsable de service informatique
Inscription : juin 2004
Messages : 105
Détails du profil
Informations personnelles :
Nom : Homme christophe de saint leger
Âge : 26
Localisation : France

Informations professionnelles :
Activité : Responsable de service informatique
Secteur : Industrie

Informations forums :
Inscription : juin 2004
Messages : 105
Points : 82
Points : 82
Envoyer un message via MSN à Stopher Envoyer un message via Skype™ à Stopher
Il faudrait connaitre l'encodage de ton doc .csv afin d'utiliser la bonne methode d'encodage ou de decodage ...

exemple :
uft8_encode();
utf8_decode();
Stopher est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 16h17   #3
Membre à l'essai
 
Inscription : mai 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 195
Points : 20
Points : 20
Merci de té réponse.

Cette info, je la trouve où ?

Dans les préférences d'Excel ?

Merci de ton aide.
boteha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/02/2008, 10h32   #4
Membre confirmé
 
Avatar de rems033
 
Inscription : mai 2007
Messages : 513
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : mai 2007
Messages : 513
Points : 299
Points : 299
Lorsque tu enregistre sous, selection "codage" dans l'"option web" et tu peux sélectionner le codage de tes caractères...
__________________

rems033 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/02/2008, 11h11   #5
Membre à l'essai
 
Inscription : mai 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 195
Points : 20
Points : 20
MERCI beaucoup.
boteha est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h14.


 
 
 
 
Partenaires

Hébergement Web