Why PHP 4.4.9 throws 'Parse error: syntax error, unexpected T_STATIC'?
php, php4, syntax-error
Solution
I'm pretty sure static class variables are new to PHP5, so can't be used in PHP4.
Here's the deal: PHP4 can use the `static` keyword in functions, not classes. The only PHP4 usage of `static` was like this:
function howManyTimes() {
static $count = 0;
echo "Function has been called $count times.";
$count++;
}
That variable is bound to the function's scope forever. That's how PHP4 interprets `static`. The PHP5 interpretation you are trying to use is not available in your current PHP version. Sorry!
Problem
I just realized the professor Google is unable to present a specific page where I can find out, when `static` keyword added to PHP 4. Though following the change log for php 4 I can see that it was available since Version 4.0.6 (or before) but why does it throws: Parse error: syntax error, unexpected T_STATIC, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in {FILE_PATH+LINE#} for a simple code as follows: ``` class myClass { static $_debug = true; } ``` Or this assignment of class-variable was introduced in earlier versions of PHP?