此问题已在此处有答案:
PHP, pass parameters from command line to a PHP script(9个回答)
3天前关闭。
我从命令行$ php my_script.php --num1=124 --first_name=don
调用PHP脚本
如何访问传入此脚本的 * 任何 * 键值对?键可以是任意的,所以使用getopt()
和特定的值将不起作用。
以下是我希望在脚本中访问的内容:
$my_args = array(
"num1" => 124,
"first_name" => "don"
);
如果我使用var_dump($argv)
,我会得到这样的输出:
array(
[0] => "my_script.php",
[1] => "--num1=5",
[2] => "--num2=123"
);
我是不是该看看
4条答案
按热度按时间vmdwslir1#
8yoxcaq72#
您可以使用https://github.com/pear/Console_CommandLine composer包来解析选项。(我是其中一个维护者)。
在文档中可以找到一个示例:https://pear.php.net/manual/en/package.console.console-commandline.intro.php
pbgvytdp3#
我已经使用了一些东西沿着这条线从PHP命令行
它会产生类似于
vq8itlhq4#
你应该在PHP中使用getOpt函数,它在命令行中支持短和长选项:
https://www.php.net/manual/en/function.getopt.php
从上面给出的链接:
从shell:
php example.php -fvalue -h
$options = getopt(“f:hp:“); var_dump($options);
这将打印:数组(2){ [“f”]=> string(5)“value”[“h”]=> bool(false)}