PHP:解析错误:语法错误,意外T_VARIABLE调用变量时

时间:2012-08-07 04:25:54

标签: php

为什么我会在这条线上获得Parse error: syntax error, unexpected T_VARIABLE

$fieldLabel = '<label for=".'$fieldNameStripped'.">.'$fieldName'.</label>';

4 个答案:

答案 0 :(得分:3)

因为您没有正确使用PHP - 语法错误:

$fieldLabel = '<label for="' . $fieldNameStripped . '">' . $fieldName . '</label>';
                           ^^^^                  ^^^

你有串联运算符INSIDE字符串,所以你根本没有连接。

尝试

$fieldlabel = <<<EOL
<label for="$fieldNameStripped">$fieldName</label>
EOL;

HEREDOC使这些事情变得微不足道,而且更容易阅读。使用现代语法高亮编辑器,变量甚至可以为您突出。

您还可以像这样准备字符串: $ fieldLabel =“{$ field-&gt; name}”;

这里双引号包围外部字符串意味着PHP将解析其中的变量。然而,你必须逃避双引号。我已经更改了$ fieldName变量,以显示如何将变量包装在{}括号中的对象属性等项目中(我倾向于将它们用于字符串中的常规变量,因为我认为这是更好的做法是一致的)。

答案 1 :(得分:1)

$fieldLabel = '<label for="'.$fieldNameStripped.'">'.$fieldName.'</label>';

你应该怎么做。

在你所做的事情中,有两个问题:

  1. 使用.进行连接时,您应确认.两侧的字符串应为"properly closed"

  2. 另外,如果您有$var = 1;echo '$var';,则表示您未获得1。得到$var作为输出。

答案 2 :(得分:0)

$fieldLabel = '<label for="'.$fieldNameStripped.'">'.$fieldName.'</label>';

答案 3 :(得分:0)

你的行应该是这样的

$fieldLabel = '<label for="' . $fieldNameStripped . '">' . $fieldName . '</label>';