我正在研究一个PHP脚本,该脚本从命令行获取输入。它需要两个字符串作为两个国家名称,例如
- php myphp.php japan china (command line)
php代码:
if(PHP_SAPI == 'cli') {
$first = $argv[1];
$second = $argv[2];
print_r($argv);
}
这里$ first和$ second被传递给其他函数以进一步处理数据。在传递这些参数之前,我需要检查它们是否为有效的国家/地区名称。
但是当国家名称由两个字符串组成,例如韩国时,它不会将整个国家名称作为一个输入。
- php myphp.php japan south korea (command line)
Array
(
[0] => myphp.php
[1] => china
[2] => south
[3] => korea
)
我如何输入名称包含两个或三个字符串的国家?例如在上面的数组中,$ argv [1]应该是“ china”,$ argv [2]应该是“ south korea”。
非常感谢!
您可以简单地用引号将两个国家名称括起来
- php myphp.php 'japan' 'south korea' (command line)
Array
(
[0] => cli.php
[1] => japan
[2] => south korea
)
或者如果您想使用逗号,则需要在myphp.php
中进行一些数据操作>
// concatenate the relevant arguments into one string $arguments = ''; for ($i = 1; $i < count($argv); $i++) { $arguments .= $argv[$i] . ' '; } // explode on comma $arguments = explode(', ', $arguments); print_r($arguments);
然后:
- php myphp.php japan, south korea (command line)
Array
(
[0] => japan
[1] => south korea
)