2

我试图在 CLI 中运行 PHP 脚本时将参数传递给它。我一直在使用以下代码来做到这一点......

// Set argument variables
// A is the filetype
// B is the filename and directory
$arguments = getopt("a:b:");

// If we're importing pies...
if($arguments['a'] == 'pies') {
    echo 'File Conversion and Import of PIES Data Beginning Now...' . "\n\n";
}

命令看起来像这样......:

php fileimport.php -a pies -b /filepath/filename.xml

我已经看到以其他方式传递的参数(对于其他脚本),例如......

php fileimport --type=pies --path=filepath/filename.xml

我个人更喜欢这种方法,但我不知道如何编写 PHP 脚本来收集这些参数,更不用说期待它们了。我敢肯定这非常容易,如果我错过了显而易见的事情,我很抱歉,但我希望在这里得到一些指导。

谢谢!

4

2 回答 2

5

PHP 文档中所述:

$shortopts  = "";

$longopts  = array(
    "type:",
    "path:",
);
// Get command line arguments
$options = getopt($shortopts, $longopts);
echo 'Input Options: ', PHP_EOL;
var_dump($options);
于 2013-09-13T13:46:15.230 回答
0

尝试这个

<?php
    $a=$argv[1];
    $b=$argv[2];

?>

你的 CLI 调用应该是

php fileimport.php TEST1 TEST2

于 2013-09-13T13:48:37.343 回答