How does the "Scope Resolution Operator" in PHP compare to similar concepts in other programming languages like Java's "this" keyword?

In PHP, the Scope Resolution Operator (::) is used to access static methods and properties of a class. It is similar to Java's "this" keyword, which is used to refer to the current object instance within a class. However, the Scope Resolution Operator in PHP is specifically used for static elements, while "this" in Java is used for non-static elements.

class Example {
    public static $staticProperty = 5;
    
    public static function getStaticProperty() {
        return self::$staticProperty;
    }
}

echo Example::getStaticProperty(); // Output: 5