[CSV] Confusion sur caractères de séparation
Bonjour a tous
Je suis actuellement en stage et je dois mettre un fichier excel en mySQL, pour cela je passe par php.
Le fichier excel est en .csv ce qui donne des lignes comme ça:
Code:
1 2 3
|
;HP dc7700 Country Kit;I07-162;0;EUR;8407009;14-nov-07
CNN73525K5;HP L1906 LCD Monitor;I07-163;175;EUR;8407619;15-nov-07 |
Pour voir si php les lit bien je les met dans un tableau html en créant une case a chaque ;.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
<?php
$fichier = "monfichier.csv";
$fic = fopen($fichier, 'rb');
echo "<table border='1'>\n";
for ($ligne = fgetcsv($fic, 1024); !feof($fic); $ligne = fgetcsv($fic, 1024))
{
echo "<tr>";
$j = sizeof($ligne);
for ($i = 0; $i < $j; $i++)
{
$a=$ligne[$i];
$x= strlen($a);
echo"<th>";
for ($o=0;$o<$x;$o++)
{
if ($a{$o}!=";")
{
echo $a{$o};
}
else echo"</th><th>";
}
echo"</th>";
}
echo "</tr>";
}
echo "</table>\n";
?> |
Mon probleme est que j'ai l'impression que php ne fais pas la difference entre les , et les ; car pour les chiffres a virgule il me créé une case :(
Si quelqu'un a déja rencontré ce probleme ou sait d'ou cela pourait venir ce serait sympa de m'aider :)
Bonne journée a tous.