PHP,我的值的发布密钥被每边额外的单引号包裹起来

Goo*_*ose 2 php forms post

我在执行这些操作之前没有看到过这种情况,也找不到导致这种独特行为的原因.我的变量是围绕它们获得额外的单引号,例如''foo''而不是'foo'.展示可能更有意义.

这是我的输入 (注意它是一个数组,这是必要的)

<input type="text" name="item[0]['foo']" value="bar">
Run Code Online (Sandbox Code Playgroud)

这是我的控制器 (注意我使用foreach来完成数组)

foreach ($_POST['item'] as $item) {
    var_dump($item);
}
Run Code Online (Sandbox Code Playgroud)

这是我的var_dump (注意额外的单引号,是的,它们是单引号而不是双引号)

array (size=2)
  ''foo'' => string 'bar' (length=4)
  ''key'' => string 'value' (length=4)
Run Code Online (Sandbox Code Playgroud)

显然我们应该期待它

array (size=2)
  'foo' => string 'bar' (length=4)
  'key' => string 'value' (length=4)
Run Code Online (Sandbox Code Playgroud)

除了twitter bootstrap CSS之外,我没有使用任何外部资源或框架.我使用的是PHP 5.5,并且没有其他地方可以触及这个变量.

这些额外的单引号来自哪里?

jer*_*mez 7

不要在HTML中包含单引号,它们就是字面意思.运用

<input type="text" name="item[0][foo]" value="bar">
Run Code Online (Sandbox Code Playgroud)

应该解决它.