如何将命令行PHP参数传递给使用REQUEST或POST的脚本?

如何将命令行PHP参数传递给使用REQUEST或POST的脚本?,php,Php,我有一个脚本,我通常可以这样访问: http://www.example.com/index.php?p1=a1&p2=b1 <?php $resp = file_get_contents("http://www.example.com/index.php?p1=a1&p2=b1"); echo "GET call returned: $resp"; ?> 如果我尝试使用shell_exec执行此操作,我将如何传入参数?这不起作用: shell_exec("php

我有一个脚本,我通常可以这样访问:

http://www.example.com/index.php?p1=a1&p2=b1
<?php
$resp = file_get_contents("http://www.example.com/index.php?p1=a1&p2=b1");
echo "GET call returned: $resp";
?>
如果我尝试使用shell_exec执行此操作,我将如何传入参数?这不起作用:

shell_exec("php index.php p1=a1 p2=b1");

您不能从控制台使用GET、POST或REQUEST,因为它们是HTTP请求方法。你必须使用argv,就像评论中说的那样


如果无法修改脚本以使用它,则可能需要构建某种桥接脚本,将参数转换为GET或POST参数,然后使用它们调用/获取原始脚本。不过,我不确定这是否值得这么麻烦。

这是不可能的。GET参数需要GET请求才能存在

如果没有其他方法,您可以像这样“下载”(并调用)您的文件:

http://www.example.com/index.php?p1=a1&p2=b1
<?php
$resp = file_get_contents("http://www.example.com/index.php?p1=a1&p2=b1");
echo "GET call returned: $resp";
?>

Duplicate我不知道它是否真的是一个dupe,因为我需要知道当底层脚本无法更改为与argv一起使用时,如何像get请求一样实际传递变量