0

我想用“$key => $value”对遍历一个数组,但想上到最后一项。我想知道使用 foreach 或任何其他功能如何做到这一点。

这就是我想要这样做的原因。我的数组中的键是 URL 参数,值是该参数的值。现在我将构建 URL 查询为 key1=value1&key2=value2&key3=value3

我将在每个键值之间添加分隔符“&”,但不是在末尾。为此,我想通过放置分隔符并将最后一个分隔符更改为空白字符串,从而达到最后一项。

因此,请让我知道如何使用 foreach 直到最后一个项目或为我提供更好的解决方案?谢谢。

4

1 回答 1

3

更好用http_build_query

   <?php
   $data = array('foo'=>'bar',
          'baz'=>'boom',
          'cow'=>'milk',
          'php'=>'hypertext processor');

   echo http_build_query($data) . "\n";
   // Output : foo=bar&baz=boom&cow=milk&php=hypertext+processor

   echo http_build_query($data, '', '&amp;');
   // Ouput: foo=bar&amp;baz=boom&amp;cow=milk&amp;php=hypertext+processor

   ?>

http://php.net/manual/en/function.http-build-query.php

使用foreach循环(不推荐)

   <?php
   $ar_qs = array();
   foreach ($data as $key => $value) {
     $ar_qs[] = "$key=". urlencode($value);
   }
   echo $query_string = implode("&", $ar_qs);
   ?>
于 2013-05-24T04:00:49.667 回答