使用字符串名称访问php中的POST变量

时间:2013-12-06 19:31:04

标签: php http-post

嗨,我在php中尝试访问$ _POST vars时遇到问题。我有一个名为“c012”的组合。好吧,我发送带有这个var的表单,并且我检查了这个var是发送正常,当我尝试使用此代码访问时,其中$ var1,$ var2和$ var3是数字:

$var1 = 0; $var2 = 1; $var3 = 2;

$pointer_combo = "c".$var1.$var2.$var3;
echo $_POST['$pointer_combo'];

不要显示任何内容,但如果我尝试这样做:

echo $_POST['c012'];

工作,并显示价值。上面的代码是什么问题?

3 个答案:

答案 0 :(得分:2)

如果您使用的是动态索引(存储在变量中的索引值),则不需要引号。

试试这个:

echo $_POST[$pointer_combo];

答案 1 :(得分:1)

如果值是单引号,PHP将不会执行变量替换。只有双引号或没有引号。所以

echo $_POST[$pointer_combo];

会工作,就像:

echo $_POST["$pointer_combo"];

(但显然在第二个例子中,引号中没有太多意义!)

答案 2 :(得分:1)

丢失引号:

$_POST[$pointer_combo];