php7 中的国家/地区名称输入验证
Input validation for country name in php7
我正在开发一个 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
)
我正在开发一个 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
)