<?php

namespace App\Tools;

final class Domain
{
    /**
     * @param string $url
     *
     * @return string|null
     */
    public static function getProtocol(string $url)
    {
        $parsed = parse_url($url);
        if (empty($parsed['scheme'])) {
            return null;
        }

        return $parsed['scheme'].'://';
    }

    public static function getIp(string $url)
    {
        $parsed = parse_url($url);

        if (empty($parsed['scheme'])) {
            $url = 'http://'.ltrim($url, '/');
        }

        $parsed = parse_url($url);

        if (empty($parsed['host'])) {
            return null;
        }

        return gethostbyname($parsed['host']);
    }

    public static function cleanProtocol(string $url)
    {
        return preg_replace('(^https?://)', '', $url);
    }
}
