我有一个表单,可以在表单中发送大量GET ['var']。
我已经研究过如何将它设置为发送var [1] = data& var [2] = some& var [3] = thing等等
但是如何捕获每个变量并将其组合成一个字符串,用“,”分隔?
所以$ var = data,some,thing
更新:
很抱歉我应该提到我已经有了破坏字符串的功能,但我不知道如何将所有Var [n]组合成一个$ var字符串。
希望这是有道理的!
解决!
谢谢Kazar,你的第一个答案实际上是一种享受!它要求我稍微改变我的剧本,但你的方式对我来说当然有意义
答案 0 :(得分:7)
php implode函数将数组的内容连接在一起,使用字符串在它们之间插入,如下所示:
$var = implode(',', $_GET['var']);
另外一个注意事项,var的各种元素出现的顺序取决于查询字符串中的顺序,因此字符串可能看起来像'var2,var0,var1'。为了解决这个问题,您可能需要先进行密钥排序:
$var = $_GET['var'];
ksort($var);
$joinedString = implode(',', $var);
修改:根据问题编辑:
假设您的意思是再次创建查询字符串......?
$var = $_GET['var'];
$components = array();
foreach($var as $key=>$value) {
$components[] = "var[" . $key . "]=" . $value;
}
$string = implode('&', $components);
可能有助于更详细的说明。
答案 1 :(得分:2)
只需使用连接数组内容的implode function。
$var = implode (',', $var);