【问题标题】:Saving double values in $_GET array在 $_GET 数组中保存双精度值
【发布时间】:2014-01-25 14:12:17
【问题描述】:

假设我有以下网址:

http://www.site.com/index.php?size=40&size=60

如果我显示$_GET 数组,结果如下所示:

Array
(
  [size] => 60
)

我怎样才能像这样查看$_GET 数组:

Array
(
  [size] => 40
  [size] => 60
)

【问题讨论】:

  • 一个数组永远不能有重复的键。
  • 不要在一个 URL 中多次使用同一个变量。虽然它在技术上是有效的,但这是非常糟糕的做法。
  • 网址查询应该是 ?size[]=40&size[]=60
  • 这是不可能的。这是没有意义的,因为要访问它,您需要指定其中之一,因为它们相等。我建议您将 [code] 键设为一个数组,并在其中方便地存储该值。

标签: php arrays url get


【解决方案1】:

使用方括号将其放入数组中。

http://www.site.com/index.php?size[]=40&size[]=60

【讨论】:

    【解决方案2】:

    $_GET 超全局数组和任何普通数组不能有相同的键。

    将参数名称更改为不同的名称,例如size1size2

    【讨论】:

      【解决方案3】:

      也许你想要这样的东西:

      网址:

      http://www.site.com/index.php?size[]=40&size[]=60

      PHP:

         foreach( $_GET["size"] as $size ){
              // Here manipulate each size    
          }
      

      当然,如果你想把它全部用于过滤器,试试这个:

      http://www.site.com/index.php?size=40,60

      在 php 中:

      foreach( explode(',',$_GET["size"]) as $size ){
              // Here manipulate each size    
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-08-05
        • 1970-01-01
        • 2016-08-17
        • 1970-01-01
        • 2021-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多