Maison > développement back-end > tutoriel php > Comment puis-je transmettre des variables aux scripts PHP à partir de la ligne de commande ?

Comment puis-je transmettre des variables aux scripts PHP à partir de la ligne de commande ?

Barbara Streisand
Libérer: 2024-11-12 18:19:02
original
1082 Les gens l'ont consulté

How Can I Pass Variables to PHP Scripts from the Command Line?

Transmettre des variables aux scripts PHP via la ligne de commande

Lors de l'exécution de scripts PHP à partir de la ligne de commande, il est nécessaire de transmettre des variables pour contrôler le script. comportement. Cependant, l'approche couramment utilisée pour les pages Web, myfile.php?type=daily, peut ne pas fonctionner.

Passage de paramètres via $argv

Pour transmettre des variables du ligne de commande, utilisez le tableau $argv. Lors de l'exécution quotidienne de php myfile.php, $argv[1] contiendra la valeur "quotidiennement". Cela contraste avec les pages Web, où les paramètres de chaîne de requête sont stockés dans $_GET.

Alternatives pour l'utilisation des pages Web

Si le script PHP sert également de script Web page, il existe deux solutions possibles :

  1. Shell Script et Wget : Créez un script shell qui invoque Wget pour récupérer la page avec le paramètre requis :
#!/bin/sh
wget http://location.to/myfile.php?type=daily
Copier après la connexion

Exécutez ce script depuis cron pour transmettre la variable.

  1. Détection dans PHP : Vérifiez dans le script PHP s'il est accessible via la ligne de commande ou via le Web. if (défini('STDIN')) {
    $type = $argv[1];
    } else {
    $type = $_GET['type'];
    }

Limitations

Notez que l'utilisation de $argv[1] suppose que le l'appel en ligne de commande fournit le paramètre nécessaire. Vérifiez toujours si $argv contient suffisamment de variables.

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 de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal