Выполните сценарий PHP из командной строки с переменной

Если вы просто выпускаете свое приложение ... у вас еще не будет «идентификатора приложения» ... так что ни один из этих методов не будет работать.

Мне пришлось вставить «нерабочую ссылку» в мой v1.0 ..., а затем в моем обновлении v1.1 ... добавили фактическую ссылку и идентификатор приложения.

21
задан Eric Leschinski 23 January 2015 в 18:54
поделиться

4 ответа

Скрипт:

<?php

// number of arguments passed to the script
var_dump($argc);

// the arguments as an array. first argument is always the script name
var_dump($argv);

Команда:

$ php -f test.php foo bar baz
int(4)
array(4) {
  [0]=>
  string(8) "test.php"
  [1]=>
  string(3) "foo"
  [2]=>
  string(3) "bar"
  [3]=>
  string(3) "baz"
}

Также обратите внимание на с использованием PHP из командной строки .

36
ответ дан 29 November 2019 в 06:46
поделиться

Помимо argv (как упоминал Ионут), вы можете использовать переменные среды:

Например:

var = 3 php -f test.php

В test.php:

$var = getenv("var");
7
ответ дан 29 November 2019 в 06:46
поделиться

Если вы хотите сохранить именованные параметры почти как var = 3 & foo = bar (вместо позиционных параметров, предлагаемых $ argv ), вам может помочь getopt () .

6
ответ дан 29 November 2019 в 06:46
поделиться

Помимо использования argc и argv , как указано Ионутом Г. Стэном , вы также можете использовать модуль PEAR Console_Getopt , который может анализировать параметры командной строки в стиле unix. Для получения дополнительной информации см. эту статью .

Кроме того, в Zend Framework есть аналогичные функции в классе Zend_Console_Getopt .

4
ответ дан 29 November 2019 в 06:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: