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 :

Récupérer une chaine d'un fichier pour mettre dans un tableau


Sujet :

Langage PHP

  1. #1
    Membre habitué Avatar de berti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 239
    Points : 175
    Points
    175
    Par défaut Récupérer une chaine d'un fichier pour mettre dans un tableau
    Bonjour à tous, voila mon petit souci
    Je rentre dans un tableau des dates avec un code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Array('20100110'=>'R','20100111'=>'R','20100212'=>'R','20100313'=>'R')
    je souhaiterais (pour une raison de simplicité et surtout pour éviter de rentrer de le code) écrire ces valeurs dans un fichier txt, puis de mettre ces valeurs via une variable dans le Array.

    Mais là ça se complique je ne sais pas par quoi commencer...

    je récupère la chaine dans le fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $fichier = "test.txt";
    $str = file_get_contents($fichier);
    puis j'ai fait mais ça ne marche pas... Normal

    puis j'ai fait mais ça ne marche pas...

    quelqu'un a t il déjà eu ce souci... Merci

  2. #2
    Membre confirmé Avatar de guigo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    612
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 612
    Points : 576
    Points
    576
    Par défaut
    peux tu nous mettre un ex de ton fichier txt stp (on a besoins de la structure de ton txt pour t'aider)

  3. #3
    Membre habitué Avatar de berti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 239
    Points : 175
    Points
    175
    Par défaut
    j'ai essayé 2 choses :

    - '20100110'=>'R','20100111'=>'R'

    - [20100110] => R,[20100111] => R

  4. #4
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Salut,

    Tu fais celà en deux deux explode ...

    Structure ton fichier comme exemple:
    20100110,R;20100111,R;.......;.......

    Premier explode sur le ; pour avoir les couples de construction du tableau,

    Deuxième explode des couples et construction du tableau

    Voilà pour un exemple (puisque tu utilises explode)
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  5. #5
    Membre habitué Avatar de berti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 239
    Points : 175
    Points
    175
    Par défaut
    je ne vois pas trop comment faire...

    voila le départ du projet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $params['highlight'] = Array('20100210'=>'R','20100211'=>'R','20100312'=>'R','20100313'=>'R');
    je souhaiterais mettre '20100210'=>'R','20100211'=>'R','20100312'=>'R','20100313'=>'R' dans un fichier texte.
    Pour que la personne puisse juste uploader le fichier texte sans aller dans le code

    ...

  6. #6
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Pour enregistrer:
    alors parcours de tableau avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    foreach ($params['highlight'] as $key => $value) {
        Clé : $key; Valeur : $value;
        A toi de gérer l'enregistrement dans ton fichier (un classique sur le WEB)
        Sauf que je prendrais un format couple ($key,$value) séparé par des ';'
    }
    Pour lire
    alors parcours le premier tableau obtenu par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ArrayDesCouples = explode (';',$ChaineLuDansFichier);
    Dans un boucle quelconque avec un explode de chaque $ArrayDesCouples ...
    genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ArrayUnCouple = explode (',',$ArrayDesCouples[i]);
    Voilà en gros tu as tout pour commencer un bout de code
    Bon courage A+
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  7. #7
    Membre habitué Avatar de berti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    239
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 239
    Points : 175
    Points
    175
    Par défaut
    j'ai trouvé une solution sachant que R reste inchanger voilà le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $lines = file('test.txt');
    foreach ($lines as $lineNumber => $lineContent)
    {
    	$arr[$lineContent]='R';
    }
    $params['highlight'] =$arr;

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 05/06/2014, 16h17
  2. [Débutant] Prendre une chaine d'un fichier de resource dans une culture spécifiée
    Par Nadinette dans le forum ASP.NET MVC
    Réponses: 2
    Dernier message: 08/11/2012, 12h38
  3. Réponses: 0
    Dernier message: 01/03/2011, 17h35
  4. Réponses: 14
    Dernier message: 05/05/2008, 15h35
  5. Réponses: 3
    Dernier message: 22/03/2008, 11h48

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