Csv into mysql
Résolu
anthonyr_25
Messages postés
172
Statut
Membre
-
anthonyr_25 Messages postés 172 Statut Membre -
anthonyr_25 Messages postés 172 Statut Membre -
Bonjour,
Salut salut, j'ai un fichier csv et j'aimerais récupérer mes valeurs 4 par 4 et mettre ses groupes de valeurs dans des tableau différents par exemple :
tableau 1 = array(
[0] => valeur 1
[1] => valeur 2
[2] => valeur 3
etc...
tableau 2 = array (
...
Alors j'ai réussi à récup mes valeurs et les mettres une par une dans un tableaux et maintenant j'aimerai sparer le tableau tout les quatres index :
ce qui me retourne :
Salut salut, j'ai un fichier csv et j'aimerais récupérer mes valeurs 4 par 4 et mettre ses groupes de valeurs dans des tableau différents par exemple :
tableau 1 = array(
[0] => valeur 1
[1] => valeur 2
[2] => valeur 3
etc...
tableau 2 = array (
...
Alors j'ai réussi à récup mes valeurs et les mettres une par une dans un tableaux et maintenant j'aimerai sparer le tableau tout les quatres index :
$file = "chaussures.csv";
$openfile = fopen($file, "r");
$cont = fread($openfile, filesize($file));
$tab=[];
$val="";
$tab_into=[];
for ($i=0; $i < strlen($cont); $i++) {
if ($cont[$i] != ";" AND $cont[$i] != "\n") {
$val .= $cont[$i];
} else {
$tab[] .= $val;
$val="";
}
}
print_r($tab);
ce qui me retourne :
Array
(
[0] => nom
[1] => categorie
[2] => taille
[3] => couleur
[4] => filup
[5] => basket
[6] => 39
[7] => rouge
[8] => comid
[9] => pantoufle
[10] => 35
[11] => blanc
[12] => ouvail
[13] => basket
[14] => 42
[15] => noir
[16] => tuni
[17] => bottines
[18] => 39
[19] => noir
[20] => brudal
[21] => pantoufle
[22] => 42
[23] => rouge
)
Configuration: Windows / Chrome 101.0.4951.54
2 réponses
-
Bonjour,
Ton code semble bancale ...
Déjà .. il faudrait nous donner un exempe de ton CSV
Ensuite, pourquoi n'utilises tu pas les fonctions php prévues à ça ??
A commencer par : https://www.php.net/manual/fr/function.fgetcsv.php
-
parceque de base c'est encore pire !
voila de base ce que j'avais :$file = "chaussures.csv"; $openfile = fopen($file, "r"); $cont = fread($openfile, filesize($file)); echo $cont;
c'est une chaine de caractère :nom;categorie;taille;couleur filup;basket;39;rouge comid;pantoufle;35;blanc ouvail;basket;42;noir tuni;bottines;39;noir brudal;pantoufle;42;rouge
voila mon csv :
- Je ne vois pas en quoi ça pourrait être pire ...
SI tu nous montrait plutôt ce que tu avais essayé ... et en nous montrant le résultat obtenu ??
enfin bon.. perso je n'ai aucun souci.. ça fonctionne parfaitement$handle = fopen('chaussures.csv','r'); while ( ($data = fgetcsv($handle,null,";") ) !== FALSE ) { echo "<pre>"; print_r($data); echo "</pre>"; }
Résultat :Array ( [0] => nom [1] => categorie [2] => taille [3] => couleur ) Array ( [0] => filup [1] => basket [2] => 39 [3] => rouge ) Array ( [0] => comid [1] => pantoufle [2] => 35 [3] => blanc ) Array ( [0] => ouvail [1] => basket [2] => 42 [3] => noir ) Array ( [0] => tuni [1] => bottines [2] => 39 [3] => noir ) Array ( [0] => brudal [1] => pantoufle [2] => 42 [3] => rouge )
-
-
tu comprends que data est juste un array qui correspond à la ligne dans laquelle se trouve ta boucle .... ??
( tu sais ce qu'est une boucle hein ? )
Si tu veux en faire un array manipulable, il faut remplacer mes print_r ( et les echo.. ) par l'ajout dans un array des variables...
Ce n'était qu'un exemple.. à toi de remplacer l'intérieur de la boucle par ce que tu veux en faire...-
Oui, merci je l'ai compris un peu tard xp
C'est bon grâce à ton exemple j'ai pu éxtraire ce que je voulais de mon csv ;)
$handle = fopen('chaussures.csv','r'); $data = fgetcsv($handle,null,";"); $tab=[]; while ( ( $data = fgetcsv($handle,null,";") ) !== FALSE ) { array_push($tab, $data); } see($tab); function see($tab){ echo "<pre>"; print_r($tab); echo "</pre>"; }
Bon au final sa affiche la même chose mais au moins je peux le manipuler grâce à $tab merci encore.
-