解析错误:语法错误、“页面 URL”中出现意外T_STRING


Parse error: syntax error, unexpected T_STRING in 'page URL'

<?php
    namespace security;
    class Pbkdf2
    {
        const HASH_ITERATIONS   = 6000;
        const SALT_ITERATIONS   = 10;
        const POMPOUS_SECRET    = <<<TOKEN
    vT@sw6b7,GD#orY8iQG%CbHLyzeziWFNWGnew=X]QuFfUtc(vP
    TOKEN;
        public static function generateRandomSalt($iterationCount = Pbkdf2::SALT_ITERATIONS)
        {
            if ($iterationCount < 10)
            {
                $iterationCount = 10;
            }
            $rand   = array();
            for ($i = 0; $i < $iterationCount; ++$i) {
                $rand[] = rand(0, 2147483647);
            }
            return strtolower(hash('sha256', implode('', $rand)));
        }
        public static function checklogin($password, $hash, $salt, $iterationCount = Pbkdf2::HASH_ITERATIONS)
        {
            $hashExpected   = self::hash($password, $salt, $iterationCount);
            return $hashExpected === $hash;
        }
        public static function hash($password, $salt, $iterationCount = Pbkdf2::HASH_ITERATIONS, $secret = Pbkdf2::POMPOUS_SECRET)
        {
            $hash   = $password;
            for ($i = 0; $i < $iterationCount; ++$i)
            {
                $hash   = strtolower(hash('sha256', $secret . $hash . $salt));
            }
            return $hash;
        }
    }
?>

这是使用 AJAX 从 PHP 页面加载到另一个页面的代码。这将引发错误

解析错误:语法错误,第 2 行"页面 url"中出现意外T_STRING

可悲的事实是,我在本地主机中没有收到此错误。我仅在服务器中看到此错误。

这背后隐藏的事实是什么?

您的服务器运行的是尚不支持命名空间的旧 PHP 版本。