IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème avec des fichiers CSV


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Points : 30
    Points
    30
    Par défaut Problème avec des fichiers CSV
    Bonjour, j'importe 4 fichiers CSV.
    Mon but étant de trouevr les 5 valeurs qui reviennent le plus.
    Je ne vois pas comment faire, Utiliser la fonction array_merge afin de les rassembler ?
    Si vous pouviez me donner des pistes, ce serait cool :
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    if (($handle = fopen('monfic1', 'r')) !== FALSE) {
            while (($data = fgetcsv($handle, 10, ',')) !== FALSE) {
                debug($data[4]);
            }
     
     
        }
        if (($handle2 = fopen('monfc2', 'r')) !== FALSE) {
            while (($data2 = fgetcsv($handle2, 1000, ',')) !== FALSE) {
               // debug($data2[4]);
            }
        }
     
    /*$res=array_merge($data[4],$data2[4]);
    debug($res);
    */
    Merci à vous

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Met simplement tes résultats dans un seul tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $tblFiles = array('monfic1', 'monfic2', 'monfic3', 'monfic4');
    foreach ($tblFiles as $filename) {
      if (($handle = fopen('monfic1', 'r')) !== FALSE) {
            while (($data = fgetcsv($handle, 10, ',')) !== FALSE) {
                @$result[$data[4]]++;
            }
      }
    }
    sort($result);
     
    reset($result);
    echo  key($result) . ' : ' . current($result);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Points : 30
    Points
    30
    Par défaut
    Merci, mais je n'ai pas tout compris ....
    Le fait de reset, key etc ?

    Car il me donne ça en resultat :

    0: 3982

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je me suis trompé, il faut utiliser arsort() et pas sort()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    arsort($result); // trie le tableau par ordre décroissant
     
    reset($result); // se place au début du tableau
     
    echo  key($result) . ' : ' . current($result); // affiche la clef (donc la valeur provenant du csv) et la valeur (donc le nombre d'occurence).
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Points : 30
    Points
    30
    Par défaut
    Mais ça ne m'affiche pas les données de la 4ème colonne de chaque fichiers
    C'est le but ?

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    La 4ème colonne c'est $data[3].
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 51
    Points : 30
    Points
    30
    Par défaut
    Je ne comprends pas. Moi j'aimerais regrouper les 4 tableaux en 1 seul et afficher la liste de la colonne data[3] ...
    La ça me donne pas de liste

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu pourrais aussi étudier ce que je t'ai fourni pour le comprendre et l'adapter à ta besoin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $tblFiles = array('monfic1', 'monfic2', 'monfic3', 'monfic4');
    foreach ($tblFiles as $filename) {
      if (($handle = fopen('monfic1', 'r')) !== FALSE) {
            while (($data = fgetcsv($handle, 10, ',')) !== FALSE) {
                @$result[$data[3]]++;
            }
      }
    }
     
    foreach ($result as $valeur=>$occurences) {
        echo $valeur . ' : ' . $occurences . '<br/>';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec des fichiers frm
    Par lelectronique.com dans le forum MySQL
    Réponses: 7
    Dernier message: 15/01/2009, 14h16
  2. [CSV] Problème avec un fichier csv
    Par gregal dans le forum Langage
    Réponses: 7
    Dernier message: 13/02/2007, 11h23
  3. Problème avec des fichiers audios
    Par ksper92 dans le forum Flash
    Réponses: 1
    Dernier message: 24/01/2007, 18h38
  4. [vb.net]Problème avec des fichiers DLL
    Par nakata77 dans le forum VB.NET
    Réponses: 1
    Dernier message: 20/09/2006, 18h40
  5. Problème avec des fichiers
    Par Stany dans le forum C++
    Réponses: 7
    Dernier message: 17/10/2005, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo