尝试使用heredoc在回显中打印变量时出现PHP错误

时间:2011-02-10 19:53:21

标签: php variables echo php-5.3 heredoc

当我尝试这样做时:

var $example = "Example";
echo <<<EOT
<p>$example</p>
EOT;

我收到此错误:

  

解析错误:语法错误,意外   T_VAR在.....在线...

这里发生了什么?据我所知,这应该有效。

我正在使用PHP 5.3.5。

4 个答案:

答案 0 :(得分:5)

第一行的var关键字仅用于在类中声明变量。把它拿出来。

答案 1 :(得分:3)

答案 2 :(得分:1)

PHP中没有关键字var。不是在PHP5中 - 它只是由于向后兼容性而被接受,并且用于定义类变量。

答案 3 :(得分:0)

D'哦。删除'var'关键字修复了它。感谢输入的人!

不幸的是,它并没有解决我的实际问题。见这里:

$param = array_merge($_REQUEST, $_FILES, $_COOKIE);

$param['example'] = "example";

example();

function example()
{
    global $param;
    echo <<<EOT
        <p>$param['example']</p>
EOT;
    return;
}

这次投诉是:

  

解析错误:语法错误,意外   T_ENCAPSED_AND_WHITESPACE,期待   T_STRING或T_VARIABLE或T_NUM_STRING   在.....在线...

再次,这里发生了什么?