p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Membre Expert
    Profil pro
    Inscrit en
    avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : avril 2006
    Messages : 1 349
    Points : 1 427
    Points
    1 427

    Par défaut CLI : Deux Flux de sortie : Ecran et Variable?

    Bonjour,
    Je poste ici, c'est pas très adapté, il faudrait une section CLI...

    Voila ma problèmatique : Je voudrait dédoubler le flux de sortie standard.
    Je sais même pas si c'est possible, google ne m'a pas dépanné et je m'en remet à vos avis de pro.

    Ma problématique en détail :
    J'ai un script qui fait des trucs, qui affiche d'autres trucs à l'écran etc.
    A la fin du script, j'envoie un INSERT dans dans une base de données pour loger les opérations effectuées par le script, et j'aimerai aussi loger ce qui a été affiché à l'écran par le script (Notices, Erreurs, echo etc)

    Je sais que je peux récupérer ces affichage en retour d'un sustem ou d'un exec, mais ca m'obligerai à sortir la requete d'inserton et de logage du script et ça, je veux pas.

    Il doit également être possible de rediriger le flux de sortie standard de l'écran vers une variable. Mais à ce moment, plus d'affichage écran... Et moi j'en veux un, le script peu être lancé par un programme ou par un humain...

    Donc ma question :
    Est il possible en PHP, de faire en sorte que les trucs envoyés à l'écran (erreurs, echo etc) soient aussi envoyés automatiquement dans une variable (chaine de caractères "sorties écran")???

    Merci!
    Stay in Bed .. Save Energy

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

    Informations forums :
    Inscription : juillet 2005
    Messages : 23 915
    Points : 35 176
    Points
    35 176

    Par défaut

    Je n'ai jamais essayé mais les fonctions de bufferisations doivent bien fonctionner en mode CLI aussi

    http://php.net/manual/fr/book.outcontrol.php

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 28
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : avril 2006
    Messages : 1 349
    Points : 1 427
    Points
    1 427

    Par défaut

    Merci, je connaissais pas...

    Bon, ca fait précisément ce que je veux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    ob_start ();
     
    echo "TEST TEMPO FLUX\n";
    echo "\n\n";
     
    $sorties_ecran = ob_get_contents();
     
    ob_end_flush ();
     
    echo $sorties_ecran;
     
    ?>
    M'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    TEST TEMPO FLUX
     
     
    TEST TEMPO FLUX
    J'intègre ça à un de mes script avant de donner le fin mot...

    Merci!!!
    Stay in Bed .. Save Energy

Discussions similaires

  1. Possibilité d'avoir deux flux de sorties standards
    Par Schnuffel dans le forum Langage
    Réponses: 2
    Dernier message: 27/11/2014, 11h51
  2. Flux de sortie : ob_start + header
    Par ToxiZz dans le forum PHP & MySQL
    Réponses: 2
    Dernier message: 13/12/2005, 23h56
  3. Sortie Ecran avec DevCpp
    Par vargasvan dans le forum Dev-C++
    Réponses: 6
    Dernier message: 06/10/2005, 11h24
  4. Awk - changer le flux de sortie
    Par Longrais dans le forum Linux
    Réponses: 1
    Dernier message: 16/08/2005, 17h11
  5. [JSP] addition deux valeurs en sortie d'une jsp
    Par LESOLEIL dans le forum Servlets/JSP
    Réponses: 11
    Dernier message: 08/06/2005, 11h13

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