PHP Kommandozeile unter Windows

Hier können allgemeine Fragen zu PHP gestellt und diskutiert werden.
Antworten
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

PHP Kommandozeile unter Windows

Beitrag von MarkusR »

Vielleicht kann jemand was zum PHP-Aufruf unter Windows auf Kommandozeilenebene sagen:

PHP lässt sich laut Hilfe folgendermaßen auf der Kommandozeile einsetzen
php -f <filename> [--] args...

Unter Linux geht das bestens und lässt sich für cronjobs einsetzen.

Unter Windows werden die Argumente leider nicht ins $_GET oder $_REQUEST Array übernommen und stehen somit nicht zur Verfügung. Lediglich in $argv stehen die "args", nur leider nicht mal assoziativ.

Hat jemand eine Idee, wie man die üblichen Parameter-Arrays gefüllt bekommt???

(Über einen normalen Aufruf im Browser werden die Argumente übrigens problemlos angenommen)
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7362
Registriert: 01.01.1970 01:00
Hat sich bedankt: 111 Mal
Danksagung erhalten: 934 Mal
Kontaktdaten:

Beitrag von MarkusR »

Ok... Lösung gefunden. Ist dann zwar eine Sonderlösung für Windows-Server, aber wenn's eben nicht anders geht:

Code: Alles auswählen

if ($argv)
   for ($i=1;$i<count($argv);$i++)
   {
       $it = split("=",$argv[$i]);
       $_REQUEST[$it[0]] = $it[1];
   }
Somit funktioniert dann auch unter Windows der Aufruf mittels
php -f script.php var1=value1 var2=value2
genauso wie unter Linux.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Antworten