使用PHP构建表单但使用方括号命名时遇到问题

时间:2011-03-03 19:58:02

标签: php html

我正在尝试使用PHP来构建我稍后将显示的HTML。我有以下几行:

$currentName = "test";
$numberToGiveDropDownHTML = "<Select name='$currentName[]'>\n";

但是我收到以下错误:

  

解析错误:语法错误,意外   ']',期待T_STRING或T_VARIABLE   或者......中的T_NUM_STRING

这有什么问题?我以为我可以,然后使用$ _POST超级全局。

谢谢!

3 个答案:

答案 0 :(得分:0)

试试这个:

$currentName = "test";
$numberToGiveDropDownHTML = "<Select name='{$currentName}[]'>\n";

或者:

$currentName = "test";
$numberToGiveDropDownHTML = "<Select name='$currentName" . "[]'>\n";

要么应该工作......

祝你好运!

答案 1 :(得分:0)

括号引用数组,但$ currentName不是数组。

答案 2 :(得分:0)

PHP将尝试自动解析双字符串中的变量。请考虑以下事项:

$a = 'foo';
echo "A = $a"; // output: A = foo

PHP会将$ a转换为foo,因为它是双引号。在您的场景中,它正在考虑(解析器)[]是内联变量的一部分。

您可以执行以下两项操作之一:使用{$currentname},以便解析器不会继续运行,或者将字符串分解并连接变量,例如: ...".$currentname."[]...