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] Détection de l'exécution : web ou cli ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 8
    Par défaut [Système] Détection de l'exécution : web ou cli ?
    Bonjour à tous,

    J'aimerais savoir si vous connaissez un moyen qui permettrais de determiner l'environnement d'execution du script, lors de son éxécution. A cela j'entends en mode web (cgi), on en mode console (cli).

    Car j'ai un script qui doit fonctionner en web et en cli, mais comme vous le savez la sortie web doit se faire en html, mais pas en console...

    Merci pour une astuce éventuelle !

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Par défaut
    'aimerais savoir si vous connaissez un moyen qui permettrais de determiner l'environnement d'execution du script
    il sufit de controler l'existance des variables serveurs, c'est peut etre pas le plus propre mais cela fonctionne

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 8
    Par défaut
    Grrrrmbl, j'ai essayer sur 2 machines différentes... mais est toujours présent en cli

    Donc si quelqu'un à une idée "plus propre", je suis preneur !

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    De mémoire :
    • Constante PHP_SAPI
    • Fonction php_sapi_name()


  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 8
    Par défaut
    Trés bien merci,; mais la typiquement, sur ce serveur, si je lance la commande 'php', et bien il l'execute en CGI

    Sinon, en farfouillant du coté de $_SERVER, j'ai trouvé ceci et ça marche à tout les coups :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (sizeof($_SERVER['argv']) > 0) {
    	$this->S_output	= self::OUTPUT_TXT ;
     
    } else {
    	$this->S_output	= self::OUTPUT_HTML ;
     
    }
    C'est peut être davantage "portable", non ?

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    ça vient alors de la manière dont a été compilé PHP alors (CLI désactivé en faveur de CGI).

    Votre manière de procéder ne sera pas réellement portable :
    ; This directive tells PHP whether to declare the argv&argc variables (that
    ; would contain the GET information). If you don't use these variables, you
    ; should turn it off for increased performance.
    register_argc_argv = Off
    Donc si cette directive est active argc et argv sont peuplés avec les données de la méthode GET.

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

Discussions similaires

  1. [Système] Détection de fin d'exécution
    Par Xris dans le forum Langage
    Réponses: 2
    Dernier message: 01/02/2007, 10h15
  2. Réponses: 6
    Dernier message: 12/12/2006, 01h30
  3. [Système] Lancement d'un exécutable avec PHP
    Par fdu63 dans le forum Langage
    Réponses: 5
    Dernier message: 02/08/2006, 10h00
  4. Réponses: 18
    Dernier message: 15/02/2006, 13h51
  5. [Système] fonction system et exécutable
    Par Luffy Duck dans le forum Langage
    Réponses: 5
    Dernier message: 03/01/2006, 17h49

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