phpnamespacesopcodeopcache

What does a \ (backslash) in front of function names mean?


What does a \ do in PHP?

For example, CSRF4PHP has \FALSE, \session_id, and \Exception:

public function __construct($timeout=300, $acceptGet=\FALSE){
    $this->timeout = $timeout;
    if (\session_id()) {
        $this->acceptGet = (bool) $acceptGet;
    } else {
        throw new \Exception('Could not find session id', 1);
    }
}

Solution

  • \ (backslash) is the namespace separator in PHP 5.3.

    A \ before the beginning of a function represents the Global Namespace.

    Putting it there will ensure that the function called is from the global namespace, even if there is a function by the same name in the current namespace.