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 :

[Système] Affecter à une variable le contenu d'un fichier


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 502
    Par défaut [Système] Affecter à une variable le contenu d'un fichier
    Bonjour à tous,

    Je souhaite mettre dans une variable le contenu d'un fichier texte et ensuite tester si la variable est vide ou pas, j'ai essayer de faire ça mais ça fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $commentaire=$(cat texte.txt);
    if ($commentaire!="")
    	{
     
    $ouvre=fopen("texte.txt","a+"); // ouverture en lecture ( a+)
    fwrite($ouvre,$commentaire);    // écriture fichier
    fclose($ouvre);			// fermeture fichier
    	}
    Merci d'avance pour votre aide.

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 351
    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 351
    Billets dans le blog
    17
    Par défaut
    Regarde file_get_contents( ) http://www.php.net/file_get_contents

  3. #3
    Membre éprouvé Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Par défaut
    salut,
    Je suis d'accord avec la réponse de seb.
    Mais si je peux me permettre d'ajouter une petite chose et si j'ai bien compris, tu veux lire ton fichier, donc je pense que fread aurait été plus approprié que fwrite qui s'utilise plutôt quand tu veux mettre le contenu d'une variable dans un fichier. Ce qui aurait donné, en reprenant ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $commentaire=$(cat texte.txt);
    if ($commentaire!="")
    {
    	 $ouvre = fopen("texte.txt","a+"); // ouverture en lecture ( a+)
    	 $commentaire = fread($ouvre, filesize ("texte.txt"));    // écriture fichier
    	 fclose($ouvre);			// fermeture fichier
    }
    J'en profite pour poser une petite question !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $commentaire=$(cat texte.txt);
    ça marche ça? ça fait quoi exactement?
    merci d'avance

  4. #4
    Membre chevronné Avatar de alceste
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 318
    Par défaut
    je ne sais pas si cela marche mais en tout cas, c'est censé exécuter la commande unix cat qui lit un fichier et imprime son contenu sur la sortie standard.

  5. #5
    Membre éprouvé Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Par défaut
    j'ai testé naïvement avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    echo $(cat texte.txt);
    ?>
    et j'ai eu ce message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Parse error: syntax error, unexpected '(', expecting T_VARIABLE or '$' in /var/www/test.php on line 2

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2002
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 194
    Par défaut
    Citation Envoyé par alceste Voir le message
    je ne sais pas si cela marche mais en tout cas, c'est censé exécuter la commande unix cat qui lit un fichier et imprime son contenu sur la sortie standard.
    si tu veux executer une commande externe regarde plutot vers
    exec() / system()
    je ne suis pas sur que php comprenne que tu veuilles qu'il lance cat.


    c'est pour ça file_get_contents( ) comme dit seb doit surement etre plus approprié
    c'est pour vérifier que le fichier est vide ou qu'il existe? parce que tu peux aussi tester l'existence d'un fichier en php avec file_exists()

  7. #7
    Membre chevronné Avatar de alceste
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    318
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2006
    Messages : 318
    Par défaut
    ou bien shell_exec() ou encore l'utilisation de `commande` pour ce qui est de l'exécution de commande sur la machine serveur (à noter que le safe-mode doit être désactivé pour ces deux utilisations).

    tu peux aussi utiliser la fonction file() avec la fonction implode(), si tu n'es pas en php5 et que tu ne souhaites pas utiliser les fonctions de type fopen().

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    print implode('',file('fichier'));

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/09/2013, 00h08
  2. Comment lire le contenu d'un texarea et l'affecter à une variable ?
    Par sergio88 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 11/12/2009, 15h57
  3. [VBA-E] affecter a une variable le contenue d'une cellule
    Par k-eisti dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/04/2007, 14h12
  4. Réponses: 18
    Dernier message: 27/10/2006, 14h15
  5. affecter une variable de type stringstream
    Par sorari dans le forum SL & STL
    Réponses: 3
    Dernier message: 24/03/2005, 11h14

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