为什么PHP 4.4.9抛出'Parse错误:语法错误,意外T_STATIC'?

时间:2010-01-14 21:05:20

标签: php php4 syntax-error

我刚刚意识到谷歌教授无法提供我可以找到的特定页面,当static关键字添加到PHP 4时。虽然遵循change log for php 4我可以看到它自从版本4.0.6(或之前),但为什么会抛出:

  

解析错误:语法错误,意外T_STATIC,期待{FILE_PATH + LINE#}中的T_OLD_FUNCTION或T_FUNCTION或T_VAR或'}'

对于一个简单的代码如下:

class myClass
{
    static $_debug = true;
}

或者这个类变量赋值是在早期版本的PHP中引入的吗?

1 个答案:

答案 0 :(得分:14)

我很确定静态类变量是PHP5的新功能,所以不能在PHP4中使用。

这是交易:PHP4可以使用函数中的static关键字,而不是类。 static的唯一PHP4用法是这样的:

function howManyTimes() {
    static $count = 0;
    echo "Function has been called $count times.";
    $count++;
}

该变量永远绑定到函数的作用域。这就是PHP4解释static的方式。您尝试使用的PHP5解释在您当前的PHP版本中不可用。遗憾!