Php 使用内爆数组为链接生成get语句?

Php 使用内爆数组为链接生成get语句?,php,Php,我使用数组在while循环中构建get语句。下面是我用来构建数组的代码 //为批量更新创建一个数组 $i++; $where=array(); $where[] =$cards['id'].'&'; $query.= ' id_'.$i.'='.implode($where); 当我回显$query(这是构造的get语句)时,我确实得到了我想要的结果,即 id_1=1&id_2=2&id_3=3等 但是,当我尝试在回音链接中使用$query变量时,例如: echo "&

我使用数组在while循环中构建get语句。下面是我用来构建数组的代码

//为批量更新创建一个数组

$i++;   
$where=array();
$where[] =$cards['id'].'&';
$query.=  ' id_'.$i.'='.implode($where);   
当我回显$query(这是构造的get语句)时,我确实得到了我想要的结果,即 id_1=1&id_2=2&id_3=3等

但是,当我尝试在回音链接中使用$query变量时,例如:

echo  "<a href=mass_qty_update.php?".rtrim($query,'&')."><button>"."Update All Quantities"."</button></a>";
当我应该得到:

mass_qty_update.php?id_1=1& id_2=2& id_3=3 
我不知道我在这里错过了什么。我们将一如既往地感谢您的帮助


Jack

您是否在循环中定义查询?如果是这样,它将在您退出循环后立即取消设置。为了解决这个问题,在循环设置之前将其定义为null,它应该可以工作

$query = "";
loop{
    ...
}
echo  "<a href=mass_qty_update.php?".rtrim($query,'&')."><button>"."Update All Quantities"."</button></a>";
$query=”“;
环路{
...
}
回声“;

以下是您要查找的内容:

$i=0;

$link = 'mass_qty_update.php?';
$chunks = array();

while($i<5){
    $i++;  
    $chunks[] = 'id_'.$i.'='.$i;
}

$link .= implode('&', $chunks);

echo $link;

// Output: mass_qty_update.php?id_1=1&id_2=2&id_3=3&id_4=4&id_5=5
$i=0;
$link='mass\u qty\u update.php?';
$chunks=array();

虽然($iTry url encode)字符串
$query=urlencode($query);
或者你知道,只需删除空格。你能分享更多的代码吗?比如,从整个循环开始。但这很可能是一个范围问题;回显值的位置与输出HTML的位置不同。
$i=0;

$link = 'mass_qty_update.php?';
$chunks = array();

while($i<5){
    $i++;  
    $chunks[] = 'id_'.$i.'='.$i;
}

$link .= implode('&', $chunks);

echo $link;

// Output: mass_qty_update.php?id_1=1&id_2=2&id_3=3&id_4=4&id_5=5