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 :

Ajout d'une ligne en début de fichier CSV


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut Ajout d'une ligne en début de fichier CSV
    Bonjour,

    Je souhaiterai pouvoir par l'intermédiaire d'un script, ajouter une ligne en début de fichier CSV.

    Mon fichier CSV présent sur le serveur ne contient pas d'entête de colonne et je souhaite donc par ce script ajouter une ligne permettant d'avoir ces entêtes.

    Merci par avance de l'aide que vous pourrez m'apporter.

    David

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $file = file_get_contents('fichier.csv');
    $header = "col1;col2;col3;col4\r\n";
    file_put_contents($header.$file, 'fichier.csv');
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Je viens d'essayer sur mon serveur avec le code suivant comme conseillé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $file = file_get_contents('FLUX.csv');
    $header = "EAN;CODE ART;REF FOURN;TITRE;MARQUE;TAUX TVA;PRIX ACHAT;PRIX PU;ECO PART;STOCK;COND OBLI;SECTEUR LOGITC;DESIGNATION SECTEUR;RAYON;DES RAYON;FAMILLE;DES FAMILLE;SOUS FAMILLE;DES SOUS FAMILLE;MOT DIRECTEUR;hauteur;largeur;profondeur;poids\r\n";
    file_put_contents($header.$file, 'FLUX.csv');
    ?>

    Après vérification sur le serveur, le fichier n'est pas modifié ...

  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
    oups
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    file_put_contents('fichier.csv',$header.$file);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Ok super ça fonctionne.

    Si je souhaite que le nouveau fichier ait pour nom fichier_date.csv qu'est ce que je dois rajouter ?

    Merci encore,

  6. #6
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Euh... ça ressemble à une blague cette question...
    Un petit indice : à quoi peut donc bien servir le premier paramètre de file_put_contents() ?
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  7. #7
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Pardon je pense que je n'ai pas assez bien précisé ma question.

    Je souhaite que le nom du fichier soit variable, c'est à dire que la date du jour soit intégré au nom

    Aujourd'hui, le script générait un fichier : fichier_120515.csv

    Merci encore,

    David

  8. #8
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 418
    Points
    91 418
    Billets dans le blog
    20
    Par défaut
    Regarde du côté de date() (http://php.net/manual/fr/function.date.php).
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  9. #9
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    J'ai vu cette page avant de poser la question mais je n'ai aucune idée de comment intégrer cette fonction dans le nom du fichier.

  10. #10
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    Comme toujours avec le manuel PHP, tu descends jusqu'aux exemples.
    Ici, les exemples 4 sont très simples.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    //on trouve cela par exemple
    //$today = date("Ymd");                             // 20010310
     
    //que tu peux donc transformer en
    $file_name='fichier_'.date("Y_m_d").'.csv';//car soit dit en passant, 2015_05_12 aura le mérite de se ranger dans l'ordre chronologique, contrairement au format de date français
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  11. #11
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Je viens de tester en rajoutant la variable de date mais ça ne fonctionne plus :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $file = file_get_contents('PRT66147.csv');
    $header = "EAN;CODE ART;REF FOURN;TITRE;MARQUE;TAUX TVA;PRIX ACHAT;PRIX PU;ECO PART;STOCK;COND OBLI;SECTEUR LOGITC;DESIGNATION SECTEUR;RAYON;DES RAYON;FAMILLE;DES FAMILLE;SOUS FAMILLE;DES SOUS FAMILLE;MOT DIRECTEUR;hauteur;largeur;profondeur;poids\r\n";
    file_put_contents('$file_name='Fichier_'.date("Y_m_d").'.csv';',$header.$file);
    ?>

  12. #12
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    C'est balot ça.
    Dis, tu veux pas faire un tuto pour super débutant avant de poser la moindre question ici.
    Parce que là, vraiment !
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  13. #13
    Candidat au Club
    Homme Profil pro
    etudiant
    Inscrit en
    Mai 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Merci pour les informations apportées.

    Je vais tacher de me débrouiller.

    Bonne soirée.

  14. #14
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    file_put_contents('Fichier_'.date('Y_m_d').'.csv',$header.$file);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [Débutant] Modifier une ligne prècise dans un fichier csv
    Par ganssy dans le forum VB.NET
    Réponses: 2
    Dernier message: 22/05/2012, 17h15
  2. sed et ajout d'une ligne au début d'un fichier en fonction d'une condition
    Par sheepolata dans le forum Administration système
    Réponses: 2
    Dernier message: 14/10/2010, 11h23
  3. Ajouter une ligne en début de fichier
    Par MB_MathemaTeX dans le forum Général Python
    Réponses: 4
    Dernier message: 20/03/2010, 18h02
  4. Réponses: 2
    Dernier message: 21/10/2008, 10h46
  5. Ecrire une ligne au début du fichier existant
    Par squalito dans le forum VBScript
    Réponses: 1
    Dernier message: 17/07/2008, 23h37

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