mini\url()
Function
Documentation
Generate URL with proper relative path resolution and optional CDN support
Resolves paths against baseUrl (or cdnUrl if $cdn = true), handling relative paths like '..', '.', and absolute paths. Strips scheme/host from input URLs to ensure all URLs resolve against the configured base.
Examples: url('/api/users') → https://example.com/api/users url('css/style.css', cdn: true) → https://cdn.example.com/app/css/style.css url('../images/logo.png') → https://example.com/images/logo.png url('/assets/app.js', ['v' => '2']) → https://example.com/assets/app.js?v=2
Returns UriInterface which is stringable, so works in templates: <a href="<?= url('/users') ?>">Users</a>
Can chain PSR-7 methods for further manipulation: url('/posts')->withFragment('comments')->withQuery('page=2')
Signature
function url(Psr\Http\Message\UriInterface|string $path = '', array $query = array (
), bool $cdn = false): Psr\Http\Message\UriInterface
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
$path |
Psr\Http\Message\UriInterface|string |
''
|
Documentation missing |
$query |
array |
array (
)
|
Documentation missing |
$cdn |
bool |
false
|
Documentation missing |
Returns
Psr\Http\Message\UriInterface