UrlGenerator
class UrlGenerator implements UrlGenerator (View source)
Traits
Properties
| static protected array | $macros | The registered string macros.  | 
                from Macroable | 
| protected RouteCollection | $routes | The route collection.  | 
                |
| protected Request | $request | The request instance.  | 
                |
| protected string | $assetRoot | The asset root URL.  | 
                |
| protected string | $forcedRoot | The forced URL root.  | 
                |
| protected string | $forceScheme | The forced scheme for URLs.  | 
                |
| protected string|null | $cachedRoot | A cached copy of the URL root for the current request.  | 
                |
| protected string|null | $cachedScheme | A cached copy of the URL scheme for the current request.  | 
                |
| protected string | $rootNamespace | The root namespace being applied to controller actions.  | 
                |
| protected callable | $sessionResolver | The session resolver callable.  | 
                |
| protected callable | $keyResolver | The encryption key resolver callable.  | 
                |
| protected Closure | $formatHostUsing | The callback to use to format hosts.  | 
                |
| protected Closure | $formatPathUsing | The callback to use to format paths.  | 
                |
| protected RouteUrlGenerator|null | $routeGenerator | The route URL generator instance.  | 
                
Methods
Get the number of seconds until the given DateTime.
If the given value is an interval, convert it to a DateTime instance.
Mix another object into the class.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Create a new URL Generator instance.
Get the full URL for the current request.
Get the current URL for the request.
Get the URL for the previous request.
Get the previous URL from the session if possible.
Generate an absolute URL to the given path.
Generate a secure, absolute URL to the given path.
Generate the URL to an application asset.
Generate the URL to a secure asset.
Generate the URL to an asset from a custom root domain such as CDN, etc.
Remove the index.php file from a path.
Get the default scheme for a raw URL.
Create a signed route URL for a named route.
Ensure the given signed route parameters are not reserved.
Create a temporary signed route URL for a named route.
Determine if the given request has a valid signature.
Determine if the signature from the given request matches the URL.
Determine if the expires timestamp from the given request is not from the past.
Get the URL to a named route.
Get the URL to a controller action.
Format the given controller action.
Format the array of URL parameters.
Extract the query string from the given path.
Get the base URL for the request.
Determine if the given path is a valid URL.
Get the Route URL generator instance.
Set the default named parameters used by the URL generator.
Get the default named parameters used by the URL generator.
Force the scheme for URLs.
Set the forced root URL.
Get the path formatter being used by the URL generator.
Get the request instance.
Get the session implementation from the resolver.
Set the session resolver for the generator.
Set the encryption key resolver.
Set the root controller namespace.
Details
        
                    protected        int
    secondsUntil(DateTimeInterface|DateInterval|int $delay)
        
    
    Get the number of seconds until the given DateTime.
        
                    protected        int
    availableAt(DateTimeInterface|DateInterval|int $delay = 0)
        
    
    Get the "available at" UNIX timestamp.
        
                    protected        DateTimeInterface|int
    parseDateInterval(DateTimeInterface|DateInterval|int $delay)
        
    
    If the given value is an interval, convert it to a DateTime instance.
        
                    protected        int
    currentTime()
        
    
    Get the current system time as a UNIX timestamp.
        
                static            void
    macro(string $name, object|callable $macro)
        
    
    Register a custom macro.
        
                static            void
    mixin(object $mixin, bool $replace = true)
        
    
    Mix another object into the class.
        
                static            bool
    hasMacro(string $name)
        
    
    Checks if macro is registered.
        
                static            mixed
    __callStatic(string $method, array $parameters)
        
    
    Dynamically handle calls to the class.
        
                            mixed
    __call(string $method, array $parameters)
        
    
    Dynamically handle calls to the class.
        
                            void
    __construct(RouteCollection $routes, Request $request, string|null $assetRoot = null)
        
    
    Create a new URL Generator instance.
        
                            string
    full()
        
    
    Get the full URL for the current request.
        
                            string
    current()
        
    
    Get the current URL for the request.
        
                            string
    previous(mixed $fallback = false)
        
    
    Get the URL for the previous request.
        
                    protected        string|null
    getPreviousUrlFromSession()
        
    
    Get the previous URL from the session if possible.
        
                            string
    to(string $path, mixed $extra = [], bool|null $secure = null)
        
    
    Generate an absolute URL to the given path.
        
                            string
    secure(string $path, array $parameters = [])
        
    
    Generate a secure, absolute URL to the given path.
        
                            string
    asset(string $path, bool|null $secure = null)
        
    
    Generate the URL to an application asset.
        
                            string
    secureAsset(string $path)
        
    
    Generate the URL to a secure asset.
        
                            string
    assetFrom(string $root, string $path, bool|null $secure = null)
        
    
    Generate the URL to an asset from a custom root domain such as CDN, etc.
        
                    protected        string
    removeIndex(string $root)
        
    
    Remove the index.php file from a path.
        
                            string
    formatScheme(bool|null $secure = null)
        
    
    Get the default scheme for a raw URL.
        
                            string
    signedRoute(string $name, mixed $parameters = [], DateTimeInterface|DateInterval|int|null $expiration = null, bool $absolute = true)
        
    
    Create a signed route URL for a named route.
        
                    protected        void
    ensureSignedRouteParametersAreNotReserved(mixed $parameters)
        
    
    Ensure the given signed route parameters are not reserved.
        
                            string
    temporarySignedRoute(string $name, DateTimeInterface|DateInterval|int $expiration, array $parameters = [], bool $absolute = true)
        
    
    Create a temporary signed route URL for a named route.
        
                            bool
    hasValidSignature(Request $request, bool $absolute = true)
        
    
    Determine if the given request has a valid signature.
        
                            bool
    hasCorrectSignature(Request $request, bool $absolute = true)
        
    
    Determine if the signature from the given request matches the URL.
        
                            bool
    signatureHasNotExpired(Request $request)
        
    
    Determine if the expires timestamp from the given request is not from the past.
        
                            string
    route(string $name, mixed $parameters = [], bool $absolute = true)
        
    
    Get the URL to a named route.
        
                            string
    toRoute(Route $route, mixed $parameters, bool $absolute)
        
    
    Get the URL for a given route instance.
        
                            string
    action(string|array $action, mixed $parameters = [], bool $absolute = true)
        
    
    Get the URL to a controller action.
        
                    protected        string
    formatAction(string|array $action)
        
    
    Format the given controller action.
        
                            array
    formatParameters(mixed|array $parameters)
        
    
    Format the array of URL parameters.
        
                    protected        array
    extractQueryString(string $path)
        
    
    Extract the query string from the given path.
        
                            string
    formatRoot(string $scheme, string|null $root = null)
        
    
    Get the base URL for the request.
        
                            string
    format(string $root, string $path, Route|null $route = null)
        
    
    Format the given URL segments into a single URL.
        
                            bool
    isValidUrl(string $path)
        
    
    Determine if the given path is a valid URL.
        
                    protected        RouteUrlGenerator
    routeUrl()
        
    
    Get the Route URL generator instance.
        
                            void
    defaults(array $defaults)
        
    
    Set the default named parameters used by the URL generator.
        
                            array
    getDefaultParameters()
        
    
    Get the default named parameters used by the URL generator.
        
                            void
    forceScheme(string $scheme)
        
    
    Force the scheme for URLs.
        
                            void
    forceRootUrl(string $root)
        
    
    Set the forced root URL.
        
                            $this
    formatHostUsing(Closure $callback)
        
    
    Set a callback to be used to format the host of generated URLs.
        
                            $this
    formatPathUsing(Closure $callback)
        
    
    Set a callback to be used to format the path of generated URLs.
        
                            Closure
    pathFormatter()
        
    
    Get the path formatter being used by the URL generator.
        
                            Request
    getRequest()
        
    
    Get the request instance.
        
                            void
    setRequest(Request $request)
        
    
    Set the current request instance.
        
                            $this
    setRoutes(RouteCollection $routes)
        
    
    Set the route collection.
        
                    protected        Store|null
    getSession()
        
    
    Get the session implementation from the resolver.
        
                            $this
    setSessionResolver(callable $sessionResolver)
        
    
    Set the session resolver for the generator.
        
                            $this
    setKeyResolver(callable $keyResolver)
        
    
    Set the encryption key resolver.
        
                            $this
    setRootControllerNamespace(string $rootNamespace)
        
    
    Set the root controller namespace.