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

PHP & Base de données Discussion :

Suppression valeur et Import valeur csv


Sujet :

PHP & Base de données

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Février 2024
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Février 2024
    Messages : 1
    Par défaut Suppression valeur et Import valeur csv
    Bonjour à tous,

    Je m'excuse. Par avance. Je sais que je vais me faire engueuler, mais je ne pas par où commencer. Et donc, j'ai du mal à chercher et à trouver la bonne info !
    Alerte Warning : je suis un vrai débutant (pas un faux qui fait semblant). La dernière fois que j'ai touché du code, c'était y'a 20 ans... sur une station Sun... pour valider un module à la fac... que je n'ai pas validé...

    Alors voilà mon problème, je dois modifier un fichier csv pour pouvoir l'exploiter.

    Mon csv de départ contient environ 5000 lignes (que je dois toutes garder) et 50 colonnes.
    L'objectif : supprimer environ 40 colonnes inutiles, les mettre dans le bon ordre et garder la bonne structure.

    Et voilà, je ne sais pas comment aborder le problème :
    1) modifier le csv de départ : alors j'arrive avec 3 lignes de code (via powershell et du Select-Object) à ne garder que mes colonnes voulues, mais impossible de les mettre dans le bon ordre et de constituer la structure finale...
    2) j'ai constitué un csv d'arrivée vide, avec la bonne structure, et j'essaye de récupérer les valeurs du csv de départ, pour les intégrer au bon endroit dans le csv d'arrivée.


    Voilà la structure de mon csv de départ :

    Ent1;Ent2;Ent3;Ent4:Ent5;Ent6;Ent7;Ent8;Ent9,etc...
    A4;A3;A5;A7;A9;A1;A2;A2;A6;A8;etc...
    B4;B3;B5;B7;B9;B1;B2;B2;B6;B8;etc...
    C4;C3;C5;C7;C9;C1;C2;C2;C6;C8;etc...

    Et voilà la structure de sortie attendue :
    A1;A2;A3;A4;A5;A6;A7;A8;A9;ect...
    B1;B2;B3;B4;B5;B6;B7;B8;B9;ect...
    C1;C2;C3;C4;C5;C6;C7;C8;C9;ect...

    Et la cerise sur le pompon de la chantilly du gâteau, je ne dois pas garder les entêtes de colonnes !


    Je n'attends pas un bout de code tout fait, mais juste quelques pistes... quelle solution utilisée, quelle applet, quelle fonction, enfin bref... où chercher en fait !

    Merci à tous !

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 595
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    Pour ce qui concerne le réagencement des colonnes, vu que c'est un type CSV, ça se fait en quelques clics sous excel ou tableur libre office / open office.
    Quand c'est fait, utilisez le chargement par LOAD comme expliqué dans le manuel utilisateur ICI, ça permet notamment de se débarasser de n lignes d'entête (voir paramètre IGNORE)

  3. #3
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 315
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 315
    Billets dans le blog
    17
    Par défaut
    Selon ton énoncé il n'y a pas besoin de base de données.

    En PHP tu peux :

    Ouvrir un fichier avec fopen() => https://php.net/fopen
    Lire les lignes CSV avec fgetcsv() => https://php.net/fgetcsv
    Écrire des lignes CSV avec fputcsv() => https://php.net/fputcsv
    Fermer un fichier avec fclose() => https://php.net/fclose

    $csv_options = ['separator' => ';', 'enclosure' => '"', 'escape' => ''];
    
    $file = '/path/to/your/file.csv';
    $stream_source = fopen($file, 'r');
    $header = fgetcsv($stream, ...$csv_options);
    
    $stream_destination = fopen($file . '.new.csv', 'w');
    
    while ($record = fgetcsv($stream_source, ...$csv_options)) {
        $record = array_combine($header, $record);
        $record = [ // On le remet dans l'ordre souhaité
            $record['Ent4'], $record['Ent5'], $record['Ent2'], $record['Ent1'], $record['Ent3'], // ...
        ];
        fputcsv($stream_destination, $record, ...$csv_options);
    }

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/02/2014, 16h17
  2. [JaVaScRiPt]Suppression valeur liste déourante
    Par zybay dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/05/2007, 11h24
  3. [Débutant - Excel] Suppression valeur mais conservation formule
    Par seiryujay dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/12/2006, 16h54
  4. [JNDI][LDAP] Suppression valeur d'un attribut
    Par Invité dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 25/08/2006, 11h57
  5. Jcombobox suppression valeur
    Par lazzeroni dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 12/05/2006, 16h48

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