Bonjour,
J'ai rencontré un souci sur les fonctions fgetcsv() et explode(). Ok, je m'explique:
Code1:
$handle = fopen("toto.csv", "r");
while (($data = fgetcsv($handle, 10000, ",")) !== FALSE) {
//echo $data[0] . "<br />\n";
list($cmp1, $cmp2, $cmp3, $cmp4, $cmp5, $cmp6)=explode(";", $data[0]);
echo $cmp1, $cmp2, $cmp3, $cmp4, $cmp5, $cmp6. "<br />\n";
En effet, la première ligne de ce fichier toto a un champ [bla,blabla]
C-à-d un champ contient un ,
Code2:
$data = "a;b;c;d;bla,blabla;f";
list($cmp1, $cmp2, $cmp3, $cmp4, $cmp5, $cmp6)=explode(";", $data);
echo $entete5 . "<br />\n";
Je ne comprends pas pourquoi pour le premier code, le résultat affiché ne contient pas complètement le champ [bla,blabla], mais que [bla]!
Ca marche bien avec le deuxième code, le champ avec"," est bien affiché.
Quelqu'un peut m'explique pourquoi? Je voudrais bien utiliser la fonction fgetcsv(), mais il me semble qu'il ne marche pas avec les champs qui ont des , la dedans.
Merci par avance pour vos aides.
Cdt
Partager