projectbased/app/Lib/Url.php

SHA-256: 2a86f2c659ac3d680726bb284c51ddf2f631d7e20c0fc85d7ac488b5b00692ee
<?php
namespace App\Lib;

use App\App;

final class Url {
    public static function base(): string {
        $bp = (string) App::config('base_path', '');
        return rtrim($bp, '/');
    }
    public static function path(string $path): string {
        $path = '/' . ltrim($path, '/');
        return self::base() . $path;
    }
    public static function route(string $r, array $params = []): string {
        $q = array_merge(['r' => $r], $params);
        return self::base() . '/?' . http_build_query($q);
    }
    public static function redirect(string $url): void {
        header('Location: ' . $url);
        exit;
    }
}