【问题标题】:PHP POST/GET as associative arrays?PHP POST/GET 作为关联数组?
【发布时间】:2015-11-25 17:07:19
【问题描述】:

我有 4 个表单要共享相同的操作。当 PHP 启动时,我试图在运行代码之前获取数组的值。数组名称应代表我要更新的列名称,值将是列值。我试过这个echo $_GET[0];,但它没有返回我正在寻找的值。

我的问题有两个:

  1. 有没有办法将这些值称为关联?
  2. 如果有(我确定我只是在这里做一些傻事),怎么办 我确定变量的名称?

谢谢!

【问题讨论】:

标签: php arrays variables post get


【解决方案1】:

试试var_dump($_GET);你会看到所有变量。

【讨论】:

  • 为什么 OP 应该“试试这个”?一个好的答案总是会解释所做的事情以及这样做的原因,不仅适用于 OP,而且适用于 SO 的未来访问者。
  • 我有并且我已经验证了变量正在发布。它只是一个持有开/关值的变量。我也应该发布这个
【解决方案2】:

为了利用 PHP 对直接从 HTML FORM 自动生成关联数组的内置支持,这里有一个简单的介绍:

http://php.net/manual/en/faq.html.php#faq.html.arrays

以下表单将填充多维$_POST

<form method="POST">
  <input name="words[]" value="...">
  <input name="words[]" value="...">

  <input name="foo[bar][]" value="...">
  <input name="foo[bar][]" value="...">
  <input name="foo[bar][]" value="...">

  <input name="values[0][0][]" value="...">
  <input name="values[0][0][]" value="...">
  <input name="values[0][0][]" value="...">
</form>

$_POST 将类似于

$_POST = [
  "words" => [
    0 => "...",
    1 => "..."
  ],
  "foo" => [
    "bar" => [
      0 => "...",
      1 => "...",
      2 => "..."
    ]
  ],
  "values" => [
    0 => [
      0 => [
        0 => "...",
        1 => "...",
        2 => "..."
      ]
    ]
  ]
];

另外,还有一个相关的 SO 问题也可能有帮助:

How to get form input array into PHP array

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-28
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 1970-01-01
    • 2021-02-06
    相关资源
    最近更新 更多