PHP-скрипт с переменными $GET в планировщике задач Windows


Как я могу передать переменные php-скрипту в планировщике задач Windows?

В Планировщике задач в разделе "Действие" я ввожу:

Программы/Сценарии: C:\php\php.exe

Аргументы C:\scripts\myscript.php?var1=1&var2=2

? var1=1&var2=2 не передается php-скрипту в планировщике задач. Если я вызываю скрипт с vars в браузере, переменные передаются в скрипт правильно.

РЕДАКТИРОВАТЬ 1

Для лучшего понимания ответы

В скрипте с GET ich получаем данные в виде:

$varB = $_GET['B'];
$varC = $_GET['C'];
$varA = $_GET['A'];

С URL-адресом я бы назвал его

? В=ввв и С=ссс и А=ааа

Как бы выглядел этот пример, если бы я сделал это с помощью argv?

Author: VolkaRacho, 2013-09-20

3 answers

Вы не можете сделать это в командной строке, $_GET, $_POST, все etc создаются с веб-сервера.

Что вы можете сделать, это использовать правильные аргументы командной строки, такие как:

C:\php\php.exe C:\scripts\myscript.php 1 2 "arg with space"

И получить к ним доступ с помощью $argv например:

$var1 = $argv[1]; // 1
$var2 = $argv[2]; // 2
$var3 = $argv[3]; // arg with space

И просто для ясности, $argv[0] всегда является названием сценария.

Редактировать: Для четного больше ясности$argc содержит количество переданных аргументов.

 5
Author: Sammitch, 2016-08-05 18:45:52

Вы можете передать аргументы, как показано ниже, в свой PHP-скрипт:

C:\Program Files\PHP\php.exe C:\scripts\script.php arg1 arg2

Внутри script.php, вы можете получить к ним доступ с помощью $argv, как показано ниже:

for ($i = 0; $i < count($argv); $i++) {
    echo "$i: {$argv[$i]}\n";
}
 1
Author: Manu M., 2013-09-20 16:34:27

Если у вас есть php-cgi, вы можете попробовать что-то вроде:

\xampp\php\php-cgi \scripts\myscript.php -- var1=1&var2=2
 0
Author: albertdiones, 2013-09-20 16:39:50