/** * Формирует и возвращает csrf токен */ public static function getCsrfToken() { if (!self::$csrf_token) { $token = md5(uniqid() . microtime()); $tokens = self::sessionGet('csrf_tokens', 'security'); if (is_array($tokens)) { $count_tokens = array_push($tokens, $token); if ($count_tokens > self::MAXIMUM_TOKENS_COUNT) { array_shift($tokens); } } else { $tokens = array($token); } self::sessionPut('csrf_tokens', $tokens, 'security'); self::$csrf_token = $token; } return self::$csrf_token; }
/** * Формирует и возвращает csrf токен */ public static function getCsrfToken() { if (!self::$csrf_token) { $token = md5(uniqid() . microtime()); $tokens = self::sessionGet('csrf_tokens', self::$csrf_tokens_name); if (is_array($tokens)) { $count_tokens = array_push($tokens, $token); while ($count_tokens > self::$maximum_tokens_count) { array_shift($tokens); $count_tokens = count($tokens); } } else { $tokens = array($token); } self::sessionPut('csrf_tokens', $tokens, self::$csrf_tokens_name); self::$csrf_token = $token; } return self::$csrf_token; }