【问题标题】:php settting $_GET valuephp 设置 $_GET 值
【发布时间】:2011-01-13 13:50:43
【问题描述】:

我需要设置 $_GET 值;我可以这样做吗?

即我有一个空的 $_GET 数组。用php怎么让它不为空?

也许借助 http 标头?

提前谢谢你;

【问题讨论】:

  • 你的意思是通过http请求将数据传递到$_GET变量吗?
  • @Wolfy87。是的。我有一个空的 $_GET 数组。用php怎么让它不为空?

标签: php http-headers get request


【解决方案1】:

这是执行此操作的三种方式。

一个:

<form method="get" action="file.php">
<input type="text" name="TextThing" />
</form>

在php文件中:

$_GET["TextThing"]; //contains the text of the texbox TextThing...

第二:

在网址后面使用问号,如下所示: http://domain.com/file.php?foo=bar&stack=overflow

然后:

$_GET["foo"]; //contains bar
$_GET["stack"]; //contains overflow

请记住,您的用户可以轻松更改变量的值。

第三:

$_GET["foo"] = "bar";
$_GET["foo"]; //contains bar

【讨论】:

    【解决方案2】:

    $_GET 填充了在 url 的查询字符串中发送的参数/值,所以如果你调用 http://example.com/my.php?foo=bar&amp;foo2=baz 然后在 my.php 中 $_GET['foo'] =&gt; 'bar'$_GET['foo2'] =&gt; 'baz'

    【讨论】:

      【解决方案3】:

      您可以尝试更新 $_GET

      $_GET['test'] = 'abc';
      

      然后将用户重定向到那里:

      header('Location: ?' . http_build_query($_GET));
      

      您只需确保仅在必要时进行重定向,以免用户陷入无限重定向。

      【讨论】:

        【解决方案4】:

        $_GET 数组最初是从查询字符串中填充的,但如果您愿意,可以在不重定向的情况下覆盖它。如果您在代码中的某个位置设置了$_GET['foo'] = 'bar';,那么无论查询字符串是什么,都会在之后设置。

        【讨论】:

        • (但我不会推荐它。)
        猜你喜欢
        • 1970-01-01
        • 2019-07-25
        • 1970-01-01
        • 2015-05-30
        • 1970-01-01
        • 2020-04-14
        • 1970-01-01
        • 2015-06-16
        • 2013-05-15
        相关资源
        最近更新 更多