Maison  >  Article  >  développement back-end  >  Comment puis-je déterminer si un script PHP s'exécute à partir de la ligne de commande ou via HTTP ?

Comment puis-je déterminer si un script PHP s'exécute à partir de la ligne de commande ou via HTTP ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-22 11:14:10480parcourir

How Do I Determine If a PHP Script Is Running From the Command Line or Through HTTP?

Détermination de l'exécution en ligne de commande et de l'exécution HTTP en PHP

Lors du développement de scripts PHP, il devient souvent nécessaire de faire la distinction entre l'exécution via la commande -line ou via HTTP. Le formatage de sortie et d'autres aspects du comportement du script peuvent différer en fonction de cette différenciation.

Méthode canonique : php_sapi_name()

L'approche recommandée pour déterminer le mode d'exécution consiste à utiliser la fonction php_sapi_name(). Il renvoie le type d'interface entre le serveur Web et PHP.

if (php_sapi_name() == "cli") {
    // In cli-mode
} else {
    // Not in cli-mode
}

Notes supplémentaires :

  • php_sapi_name() fournit une liste complète des retours possibles valeurs, y compris divers types de serveurs Web et interfaces de ligne de commande.
  • En PHP >= 4.2.0, PHP_SAPI est une constante prédéfinie qui a la même valeur que php_sapi_name().

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn