您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

PHP在Linux命令提示符中传递$ _GET

PHP在Linux命令提示符中传递$ _GET

通常,为了将参数传递给命令行脚本,您将使用argv全局变量getopt

// bash command:
//   PHP -e myscript.PHP hello
echo $argv[1]; // prints hello

// bash command:
//   PHP -e myscript.PHP -f=world
$opts = getopt('f:');
echo $opts['f']; // prints world

$ _GET引用HTTP GET方法参数,该参数在命令行中不可用,因为它们需要Web服务器来填充。

如果您确实想填充$ _GET,则可以执行以下操作:

// bash command:
//   export QUERY_STRING="var=value&arg=value" ; PHP -e myscript.PHP
parse_str($_SERVER['QUERY_STRING'], $_GET);
print_r($_GET);
/* outputs:
     Array(
        [var] => value
        [arg] => value
     )
*/

您还可以执行给定脚本,$_GET从命令行填充,而无需修改所述脚本:

export QUERY_STRING="var=value&arg=value" ; \
PHP -e -r 'parse_str($_SERVER["QUERY_STRING"], $_GET); include "index.PHP";'

请注意,您也可以使用$_POST和进行相同的操作$_COOKIE

php 2022/1/1 18:17:51 有458人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶