All the static
keyword does is tell PHP that a function should be called statically. In actual fact, even the latest versions will let you call any function statically if you want, as this online demo with your code in multiple PHP versions shows.
If you turn error reporting to the max, as in this demo you will see that newer versions of PHP give an E_STRICT
message that you're using a function statically that hasn't been declared as such, but otherwise run the code exactly as before.
All that's needed to make a static function call is ::
, and that was present and correct in PHP 4. It's really the non-static methods that were tidied up in PHP 5, and further in 5.3