PHP $ _GET ['string'+ $ var] - 这可能吗?

时间:2015-05-14 01:44:49

标签: php

目前为止的PHP代码。

echo $sender = isset($_GET['s']) ? $_GET['s'] : "null";
echo $receiver = isset($_GET['r']) ? $_GET['r'] : "null";
echo $timestamp = isset($_GET['t']) ? $_GET['t'] : "0";
echo "<br/>";
echo $sTotalItems = isset($_GET['si']) ? intval($_GET['si']) : 0;
echo $rTotalItems = isset($_GET['ri']) ? intval($_GET['ri']) : 0;
echo "<br/>";


for ($i = 0; $i < $sTotalItems; $i++) {
    echo $input = isset($_GET['si'+$i]) ? urldecode($_GET['si'+$i]) : "null";
    if ($input == "null")
        continue;

    $input = explode(":", $input);
    var_dump($input);

}

我要做的是动态获取GET变量。我发送了多个GET请求,它们都包含基本相同的数据,只是差别很小。 - 我的问题很简单。这并不像我想的那样在我的脑海中起作用。

$_GET['si'+$i];

在我看来,这应该变成..

$_GET['si1'];

可以这样做吗?或者我是否必须找到另一种方法来做到这一点? 这是做什么..是我发送多个请求..基本上按以下顺序..

http://dummy.com/integrate.php?s=me&r=you&t=3425&si=1&ri=2&si0=item:1:2&ri0=item:2:1&ri1=item:3:4

我正在尝试使其动态化,发送多个“项目”,其中有一个标识符告诉系统,每个发送者有多少项,以及接收者。然后循环通过每个发送者和&amp;接收者的项目,然后将项目分成3个值。姓名,身份证和金额。问题是代码,根本没有抓住项目。我是否正确,假设您不能同时使用$ _GET方法和变量?

3 个答案:

答案 0 :(得分:1)

是的,您可以将动态变量与$_GET一起使用,唯一的问题是使用.(句点)进行连接而不是+

答案 1 :(得分:1)

PHP是松散输入的,所以是的,你可以&#34;添加&#34;一个数字到一个字符串,该数字将转换为它的字符串表示形式。您使用连接运算符(.)来执行此操作,而不是添加运算符(+)。使用$_GET['si'.$i]

答案 2 :(得分:0)

其他答案显示了如何做你正在尝试的事情,但是最好只使用数组。

使用item[]=something&item[]=else甚至item[1]=something&item[2]=else

然后,您可以访问$_GET['item'][0]$_GET['item'][1]