在 php 命令行中,可以通过 $_server[‘argv’] 数组获取参数,它包含脚本文件名和传递的参数。第一个参数可通过 argv[1] 获取,所有参数可通过 argv 数组获取。此外,可以使用 getopt() 函数获取以破折号或双破折号为前缀的选项参数。
如何在 PHP 命令行中获取参数
为了在 PHP 命令行脚本中获取参数,可以使用 $_SERVER[‘argv’] 数组,其中包含以下信息:
- argv[0]:脚本的文件名
- argv[1] 到 argv[n]:传递给脚本的参数
获取第一个参数
要获取第一个参数,可以使用以下代码:
$firstArg = $_SERVER['argv'][1];
获取全部参数
要获取所有参数的数组,可以使用以下代码:
$args = $_SERVER['argv'];
示例
以下示例演示如何从命令行获取参数:
<?php // 获取第一个参数 $firstName = $_SERVER['argv'][1]; // 获取第二个参数 $lastName = $_SERVER['argv'][2]; // 打印参数 echo "你的名字是 $firstName $lastName"; ?>
使用选项参数
除了位置参数之外,还可以使用选项参数,以破折号 (-) 或双破折号 (–) 为前缀。要获取选项参数,可以使用 getopt() 函数,它返回一个关联数组,其中键是选项名称,值是选项值。
以下示例演示如何使用 getopt() 获取选项参数:
<?php $options = getopt("abc:"); // 检查选项是否存在 if (isset($options['a'])) { echo "选项 -a 已设置。" . PHP_EOL; } // 获取选项 -c 的值 if (isset($options['c'])) { echo "选项 -c 的值为 {$options['c']}。" . PHP_EOL; } ?>
注意:
- 选项参数的名称区分大小写。
- 选项参数的值可以是字符串、整数或其他数据类型。
- 选项参数可以接受多个值,在这种情况下,值将存储在一个数组中。