使用implode将$ _Get查询中的值推送到值

时间:2014-03-11 16:11:58

标签: php get

我试图使用for循环或每个循环将get查询中的值推送到另一个变量。我可以对这种方法有所帮助吗?

好的,我就在这里:

for ($i = 0 ; i < $_GET['delete']; i++) {

    $_jid [] = $_GET['delete'];  
 }

2 个答案:

答案 0 :(得分:2)

你实际上并不需要循环。如果$_jid已经是包含某些值的数组,请考虑将其与$_GET['delete']合并。

if (is_array($_jid)) {
  $_jid = array_merge($_jid, $_GET['delete']);
}

如果$_jid不是数组且除了作为$_GET['delete']的容器之外不存在,您可以只分配数组。根本不需要循环。

$_jid = $_GET['delete'];

当然,在这种情况下,您甚至不需要复制它。您可以在计划从$_GET['delete']读取的任何上下文中直接使用$_jid


更新

如果$_GET['delete']的内容最初是923,936,那么不是一个数组,而是一个字符串。如果你想要一个数组,你需要explode()分配它:

$_jid = explode(',', $_GET['delete']);

但是如果你打算最后implode(),那么显然没有必要这样做。您已经拥有了所需的逗号分隔字符串。

答案 1 :(得分:1)

正如您所看到的那样var_dump($_GET),变量$_GET是一个散列图。 您可以轻松使用foreach循环查看其中的每个成员:

foreach($_GET as $get) // $get will successively take the values of $_GET
{
  echo $get."<br />\n"; // We print these values
}

上面的代码将打印$_GET成员的值(您可以使用空白页和无效的$_GET值进行尝试,因为&#34; http://yoursite.usa/?get1=stuff&get2=morestuff&#34; )

您可以将$ _GET值放入数组(或其他变量)中,而不是echo

$array = array(); // Creating an empty array
$i = 0; // Counter
foreach($_GET as $get)
{
  $array[$i] = $get; // Each $_GET value is store in a $array slot
  $i++;
}

在PHP中,foreach非常有用且非常易于使用。 但是,您不能for使用$_GET,因为它是一个散列图,而不是一个数组(实际上,您可以,但它更复杂)。

希望我帮助