GOOD SHELL MAS BOY
Server: Apache/2.4.52 (Ubuntu)
System: Linux vmi1836763.contaboserver.net 5.15.0-130-generic #140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024 x86_64
User: www-data (33)
PHP: 8.4.10
Disabled: NONE
Upload Files
File: /var/www/html/vendor/sentry/sentry/src/Util/PHPVersion.php
<?php

declare(strict_types=1);

namespace Sentry\Util;

/**
 * This class is an helper utility to parse the version of PHP and convert it
 * to a normalized form.
 *
 * @internal
 */
final class PHPVersion
{
    private const VERSION_PARSING_REGEX = '/^(?<base>\d\.\d\.\d{1,2})(?<extra>-(beta|rc)-?(\d+)?(-dev)?)?/i';

    /**
     * Parses the given string representing a PHP version and returns it in a
     * normalized form.
     *
     * @param string $version The string to parse
     */
    public static function parseVersion(string $version = \PHP_VERSION): string
    {
        if (!preg_match(self::VERSION_PARSING_REGEX, $version, $matches)) {
            return $version;
        }

        $version = $matches['base'];

        if (isset($matches['extra'])) {
            $version .= $matches['extra'];
        }

        return $version;
    }
}