Php $\u后数组问题

Php $\u后数组问题,php,arrays,post,Php,Arrays,Post,我有以下代码: $array = 'user_profile'; $var_name = 'postcode'; if ( isset($_POST['user_profile']) ) { echo '<br />Var name ('.$var_name.')<br />'; print '<pre>';print 'Keys<br>';print_r(array_keys($_POST[$array]));print '<

我有以下代码:

$array = 'user_profile';
$var_name = 'postcode';
if ( isset($_POST['user_profile']) ) {
    echo '<br />Var name ('.$var_name.')<br />';
    print '<pre>';print 'Keys<br>';print_r(array_keys($_POST[$array]));print '</pre>';print '<br />';
    print '<pre>';print 'POST user_profile<br />';print_r($_POST[$array]);print '</pre>';print '<br />';
    print '<pre>';print 'POST dump<br />';var_dump($_POST[$array]);print '</pre>';print '<br />';
    echo '<br />{'.$_POST[$array][$var_name].'}<br /><br />';
}
die();
第153行带有:
echo'
{.$\u POST[$array][$var\u name].}

我整个上午都在试图找出我的错误在哪里

谁能帮帮我吗?。谢谢

[编辑]


我做了一些修改,试图澄清所问的问题。显然,代码更长,但您看到的位位于函数的开头。没有任何其他东西能帮助你理解什么是幸福。输出正是我在浏览器中得到的,即使是最后一个括号,顺便说一句,我不明白为什么会有,第一个可以,但第二个是在通知后打印的???

您的关键字中有单引号
[“'postcode'”

echo'
{.$\u POST[$array][“$var\u name''.].}


显然$\u POST['user\u profile']的键带有附加引号

您可以使用


或者通过修复生成这些奇怪的额外单引号的表单(
)。

第152行的结果是什么?打印post数组。这是您在标题下转储的同一数组吗?
POST user_profile
?依我看,它应该可以工作。你能发布一个
var\u dump()
而不是
print\r()
吗?可能是
邮政编码
键出了问题。是否有代码没有显示给我们?您确定要向我们显示正确代码的正确输出吗?您确定在测试之前没有忘记上传代码更改吗?我觉得这里发生了一些你没有告诉我们的事情。你能发布字段html部分吗?最后的
{}
在那里,因为你在最后的
echo
调用中有它们。通知是在执行
echo
之前生成的。@Syscall,这就是我们了解到
print\r
从不在数组键周围添加任何引号的原因。:-)准确的眼镜蛇快。我会一直使用转储而不是打印。听起来印刷业不是那么“专业”,不是吗?@Carlos我更喜欢
var\u dump()
。另外,因为
false
未显示在
print\u r()
中。这是我的错误:在输入中,我写了name=“user\u profile['postcode]”,而不是name=“user\u profile[postcode]”。再次感谢。很抱歉,是HTML的问题。你是对的,这是需要的。不客气,不用担心。不要忘记在下一个问题中添加尽可能多的信息;)
Var name (postcode)
Keys
Array
(
    [0] => 'address_1'
    [1] => 'address_2'
    [2] => 'address_3'
    [3] => 'address_4'
    [4] => 'address_5'
    [5] => 'postcode'
    [6] => 'phone'
)

POST user_profile
Array
(
    ['address_1'] => Templeton House
    ['address_2'] => 62 Templeton Street, Suite 22
    ['address_3'] => 
    ['address_4'] => Glasgow 
    ['address_5'] => 
    ['postcode'] => G40 1DA
    ['phone'] => 07222222
)

POST dump
array(7) {
  ["'address_1'"]=>
  string(15) "Templeton House"
  ["'address_2'"]=>
  string(29) "62 Templeton Street, Suite 22"
  ["'address_3'"]=>
  string(0) ""
  ["'address_4'"]=>
  string(8) "Glasgow "
  ["'address_5'"]=>
  string(0) ""
  ["'postcode'"]=>
  string(7) "G40 1DA"
  ["'phone'"]=>
  string(8) "07222222"
}

Notice: Undefined index: postcode in C:\xampp\htdocs\xxxxxx.com\src\controller\app\userController.php on line 153

{}
echo '<br />{'.$_POST[$array]["'$var_name'"].'}<br /><br />';
$var_name = "'postcode'";