Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich Variablen über die Befehlszeile an PHP-Skripte übergeben?

Wie kann ich Variablen über die Befehlszeile an PHP-Skripte übergeben?

Barbara Streisand
Freigeben: 2024-11-12 18:19:02
Original
998 Leute haben es durchsucht

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

Variablen über die Befehlszeile an PHP-Skripte übergeben

Beim Ausführen von PHP-Skripten über die Befehlszeile ist es notwendig, Variablen zu übergeben, um die Skripte zu steuern Verhalten. Der üblicherweise für Webseiten verwendete Ansatz myfile.php?type=daily funktioniert jedoch möglicherweise nicht.

Parameterübergabe über $argv

Um Variablen aus dem zu übergeben Verwenden Sie in der Befehlszeile das Array $argv. Wenn php myfile.php täglich ausgeführt wird, enthält $argv[1] den Wert „täglich“. Dies steht im Gegensatz zu Webseiten, bei denen Abfragezeichenfolgenparameter in $_GET gespeichert werden.

Alternativen für die Nutzung von Webseiten

Wenn das PHP-Skript auch als Web dient Seite gibt es zwei mögliche Lösungen:

  1. Shell-Skript und Wget: Erstellen Sie ein Shell-Skript, das ruft Wget auf, um die Seite mit dem erforderlichen Parameter abzurufen:
#!/bin/sh
wget http://location.to/myfile.php?type=daily
Nach dem Login kopieren

Führen Sie dieses Skript von cron aus, um die Variable zu übergeben.

  1. Erkennung in PHP:Überprüfen Sie innerhalb des PHP-Skripts, ob über die Befehlszeile oder das Web darauf zugegriffen wird. if (definiert('STDIN')) {
    $type = $argv[1];
    } else {
    $type = $_GET['type'];
    }

Einschränkungen

Beachten Sie, dass bei der Verwendung von $argv[1] davon ausgegangen wird, dass die Der Befehlszeilenaufruf stellt die erforderlichen Parameter bereit. Überprüfen Sie immer, ob $argv genügend Variablen enthält.

Das obige ist der detaillierte Inhalt vonWie kann ich Variablen über die Befehlszeile an PHP-Skripte übergeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage