DevKB
Web Development Knowledge Base
HOME | TOP 20 | WRITE AN ARTICLE |
Sections :



RSS RSS Feed

You too, please publish your useful code snippets in any programming language :
write an article !


Valid HTML 4.0 Transitional

Plateforme d'envoi de gros fichiers en ligne
Dépannage site web
Blog infogérance
Hébergement e-mail

Olivier Ligny - - 12/03/2008 - vue 5952 fois

Détecter si un script PHP en ligne de commande (CLI) est exécuté manuellement ou par une tâche de fond

Petite astuce, si vous utilisez PHP en ligne de commande sous Linux.
Parfois vous lancez un script directement à partir du shell : ./monzscript.php ou encore php monscript.php
Parfois les scripts peuvent être lancés à intervalle régulier par une crontab, ou exécutés par un autre programme.

Comment le script PHP peut il faire la différence entre ces deux situations, pour pouvoir adapter son comportement ? Exemple, afficher des infos de débbugage s'il exécuté par vous, ou sinon ne rien afficher.

L'astuce :

Si il est exécuté manuellement via une console SSH :  $_ENV['TERM'] == 'xterm'
Sinon si $_ENV['TERM'] est vide, alors c'est qu'il s'agit d'autre chose : cronjob ou processus.
 




Write a comment :
Your name :     E-mail (optional) :

AntiSpam : what animal is visible on this picture ? :

Nos partenaires : iPhone 8 Cases & Protection