7

我从 ssh 使用:

php filename.php

并且效果很好,但是当我这样做时:

php filename.php?id=2

我收到“无法打开输入文件”错误。

有任何想法吗?

4

4 回答 4

9

您不能通过命令行传递 GET 变量!!如果您需要将变量传递给您的脚本,您可以在您的 PHP 代码中使用php filename.php your_variable和使用。$argv$argc

于 2012-12-04T17:37:40.723 回答
1

filename.php?id=2语法仅适用于 Web 服务器。

您所做的是告诉外壳程序找到一个名为的文件并将filename.php?id=2其传递给 PHP,但该文件不存在。

于 2012-12-04T17:36:35.590 回答
1

编写为网站的 PHP 文件在 CLI 上的用途有限。

您可以编写一个包装脚本,用于准备超全局变量和include网页脚本。

我建议阅读CLI 界面以了解它的作用。

于 2012-12-04T17:36:22.370 回答
0

您需要将参数作为参数传递并使用 $argv:

<?php
var_dump($argv);
?>

http://php.net/manual/en/reserved.variables.argv.php

于 2012-12-04T17:38:04.343 回答