Вход Регистрация
Файл: gapps/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php
Строк: 836
<?php

use IlluminateSupportStr;
use 
IlluminateSupportHtmlString;
use 
IlluminateContainerContainer;
use 
IlluminateContractsBusDispatcher;
use 
IlluminateContractsAuthAccessGate;
use 
IlluminateContractsRoutingUrlGenerator;
use 
IlluminateContractsRoutingResponseFactory;
use 
IlluminateContractsAuthFactory as AuthFactory;
use 
IlluminateContractsViewFactory as ViewFactory;
use 
IlluminateContractsCookieFactory as CookieFactory;
use 
IlluminateDatabaseEloquentFactory as EloquentFactory;
use 
IlluminateContractsValidationFactory as ValidationFactory;

if (! 
function_exists('abort')) {
    
/**
     * Throw an HttpException with the given data.
     *
     * @param  int     $code
     * @param  string  $message
     * @param  array   $headers
     * @return void
     *
     * @throws SymfonyComponentHttpKernelExceptionHttpException
     * @throws SymfonyComponentHttpKernelExceptionNotFoundHttpException
     */
    
function abort($code$message '', array $headers = [])
    {
        return 
app()->abort($code$message$headers);
    }
}

if (! 
function_exists('abort_if')) {
    
/**
     * Throw an HttpException with the given data if the given condition is true.
     *
     * @param  bool    $boolean
     * @param  int     $code
     * @param  string  $message
     * @param  array   $headers
     * @return void
     *
     * @throws SymfonyComponentHttpKernelExceptionHttpException
     * @throws SymfonyComponentHttpKernelExceptionNotFoundHttpException
     */
    
function abort_if($boolean$code$message '', array $headers = [])
    {
        if (
$boolean) {
            
abort($code$message$headers);
        }
    }
}

if (! 
function_exists('abort_unless')) {
    
/**
     * Throw an HttpException with the given data unless the given condition is true.
     *
     * @param  bool    $boolean
     * @param  int     $code
     * @param  string  $message
     * @param  array   $headers
     * @return void
     *
     * @throws SymfonyComponentHttpKernelExceptionHttpException
     * @throws SymfonyComponentHttpKernelExceptionNotFoundHttpException
     */
    
function abort_unless($boolean$code$message '', array $headers = [])
    {
        if (! 
$boolean) {
            
abort($code$message$headers);
        }
    }
}

if (! 
function_exists('action')) {
    
/**
     * Generate a URL to a controller action.
     *
     * @param  string  $name
     * @param  array   $parameters
     * @param  bool    $absolute
     * @return string
     */
    
function action($name$parameters = [], $absolute true)
    {
        return 
app('url')->action($name$parameters$absolute);
    }
}

if (! 
function_exists('app')) {
    
/**
     * Get the available container instance.
     *
     * @param  string  $make
     * @param  array   $parameters
     * @return mixed|IlluminateFoundationApplication
     */
    
function app($make null$parameters = [])
    {
        if (
is_null($make)) {
            return 
Container::getInstance();
        }

        return 
Container::getInstance()->make($make$parameters);
    }
}

if (! 
function_exists('app_path')) {
    
/**
     * Get the path to the application folder.
     *
     * @param  string  $path
     * @return string
     */
    
function app_path($path '')
    {
        return 
app('path').($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('asset')) {
    
/**
     * Generate an asset path for the application.
     *
     * @param  string  $path
     * @param  bool    $secure
     * @return string
     */
    
function asset($path$secure null)
    {
        return 
app('url')->asset($path$secure);
    }
}

if (! 
function_exists('auth')) {
    
/**
     * Get the available auth instance.
     *
     * @param  string|null  $guard
     * @return IlluminateContractsAuthFactory|IlluminateContractsAuthGuard|IlluminateContractsAuthStatefulGuard
     */
    
function auth($guard null)
    {
        if (
is_null($guard)) {
            return 
app(AuthFactory::class);
        } else {
            return 
app(AuthFactory::class)->guard($guard);
        }
    }
}

if (! 
function_exists('back')) {
    
/**
     * Create a new redirect response to the previous location.
     *
     * @param  int    $status
     * @param  array  $headers
     * @return IlluminateHttpRedirectResponse
     */
    
function back($status 302$headers = [])
    {
        return 
app('redirect')->back($status$headers);
    }
}

if (! 
function_exists('base_path')) {
    
/**
     * Get the path to the base of the install.
     *
     * @param  string  $path
     * @return string
     */
    
function base_path($path '')
    {
        return 
app()->basePath().($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('bcrypt')) {
    
/**
     * Hash the given value.
     *
     * @param  string  $value
     * @param  array   $options
     * @return string
     */
    
function bcrypt($value$options = [])
    {
        return 
app('hash')->make($value$options);
    }
}

if (! 
function_exists('config')) {
    
/**
     * Get / set the specified configuration value.
     *
     * If an array is passed as the key, we will assume you want to set an array of values.
     *
     * @param  array|string  $key
     * @param  mixed  $default
     * @return mixed
     */
    
function config($key null$default null)
    {
        if (
is_null($key)) {
            return 
app('config');
        }

        if (
is_array($key)) {
            return 
app('config')->set($key);
        }

        return 
app('config')->get($key$default);
    }
}

if (! 
function_exists('config_path')) {
    
/**
     * Get the configuration path.
     *
     * @param  string  $path
     * @return string
     */
    
function config_path($path '')
    {
        return 
app()->make('path.config').($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('cookie')) {
    
/**
     * Create a new cookie instance.
     *
     * @param  string  $name
     * @param  string  $value
     * @param  int     $minutes
     * @param  string  $path
     * @param  string  $domain
     * @param  bool    $secure
     * @param  bool    $httpOnly
     * @return SymfonyComponentHttpFoundationCookie
     */
    
function cookie($name null$value null$minutes 0$path null$domain null$secure false$httpOnly true)
    {
        
$cookie app(CookieFactory::class);

        if (
is_null($name)) {
            return 
$cookie;
        }

        return 
$cookie->make($name$value$minutes$path$domain$secure$httpOnly);
    }
}

if (! 
function_exists('csrf_field')) {
    
/**
     * Generate a CSRF token form field.
     *
     * @return IlluminateSupportHtmlString
     */
    
function csrf_field()
    {
        return new 
HtmlString('<input type="hidden" name="_token" value="'.csrf_token().'">');
    }
}

if (! 
function_exists('csrf_token')) {
    
/**
     * Get the CSRF token value.
     *
     * @return string
     *
     * @throws RuntimeException
     */
    
function csrf_token()
    {
        
$session app('session');

        if (isset(
$session)) {
            return 
$session->getToken();
        }

        throw new 
RuntimeException('Application session store not set.');
    }
}

if (! 
function_exists('database_path')) {
    
/**
     * Get the database path.
     *
     * @param  string  $path
     * @return string
     */
    
function database_path($path '')
    {
        return 
app()->databasePath().($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('decrypt')) {
    
/**
     * Decrypt the given value.
     *
     * @param  string  $value
     * @return string
     */
    
function decrypt($value)
    {
        return 
app('encrypter')->decrypt($value);
    }
}

if (! 
function_exists('dispatch')) {
    
/**
     * Dispatch a job to its appropriate handler.
     *
     * @param  mixed  $job
     * @return mixed
     */
    
function dispatch($job)
    {
        return 
app(Dispatcher::class)->dispatch($job);
    }
}

if (! 
function_exists('elixir')) {
    
/**
     * Get the path to a versioned Elixir file.
     *
     * @param  string  $file
     * @param  string  $buildDirectory
     * @return string
     *
     * @throws InvalidArgumentException
     */
    
function elixir($file$buildDirectory 'build')
    {
        static 
$manifest;
        static 
$manifestPath;

        if (
is_null($manifest) || $manifestPath !== $buildDirectory) {
            
$manifest json_decode(file_get_contents(public_path($buildDirectory.'/rev-manifest.json')), true);

            
$manifestPath $buildDirectory;
        }

        if (isset(
$manifest[$file])) {
            return 
'/'.trim($buildDirectory.'/'.$manifest[$file], '/');
        }

        throw new 
InvalidArgumentException("File {$file} not defined in asset manifest.");
    }
}

if (! 
function_exists('encrypt')) {
    
/**
     * Encrypt the given value.
     *
     * @param  string  $value
     * @return string
     */
    
function encrypt($value)
    {
        return 
app('encrypter')->encrypt($value);
    }
}

if (! 
function_exists('env')) {
    
/**
     * Gets the value of an environment variable. Supports boolean, empty and null.
     *
     * @param  string  $key
     * @param  mixed   $default
     * @return mixed
     */
    
function env($key$default null)
    {
        
$value getenv($key);

        if (
$value === false) {
            return 
value($default);
        }

        switch (
strtolower($value)) {
            case 
'true':
            case 
'(true)':
                return 
true;
            case 
'false':
            case 
'(false)':
                return 
false;
            case 
'empty':
            case 
'(empty)':
                return 
'';
            case 
'null':
            case 
'(null)':
                return;
        }

        if (
strlen($value) > && Str::startsWith($value'"') && Str::endsWith($value'"')) {
            return 
substr($value1, -1);
        }

        return 
$value;
    }
}

if (! 
function_exists('event')) {
    
/**
     * Fire an event and call the listeners.
     *
     * @param  string|object  $event
     * @param  mixed  $payload
     * @param  bool  $halt
     * @return array|null
     */
    
function event($event$payload = [], $halt false)
    {
        return 
app('events')->fire($event$payload$halt);
    }
}

if (! 
function_exists('factory')) {
    
/**
     * Create a model factory builder for a given class, name, and amount.
     *
     * @param  dynamic  class|class,name|class,amount|class,name,amount
     * @return IlluminateDatabaseEloquentFactoryBuilder
     */
    
function factory()
    {
        
$factory app(EloquentFactory::class);

        
$arguments func_get_args();

        if (isset(
$arguments[1]) && is_string($arguments[1])) {
            return 
$factory->of($arguments[0], $arguments[1])->times(isset($arguments[2]) ? $arguments[2] : 1);
        } elseif (isset(
$arguments[1])) {
            return 
$factory->of($arguments[0])->times($arguments[1]);
        } else {
            return 
$factory->of($arguments[0]);
        }
    }
}

if (! 
function_exists('info')) {
    
/**
     * Write some information to the log.
     *
     * @param  string  $message
     * @param  array   $context
     * @return void
     */
    
function info($message$context = [])
    {
        return 
app('log')->info($message$context);
    }
}

if (! 
function_exists('logger')) {
    
/**
     * Log a debug message to the logs.
     *
     * @param  string  $message
     * @param  array  $context
     * @return IlluminateContractsLoggingLog|null
     */
    
function logger($message null, array $context = [])
    {
        if (
is_null($message)) {
            return 
app('log');
        }

        return 
app('log')->debug($message$context);
    }
}

if (! 
function_exists('method_field')) {
    
/**
     * Generate a form field to spoof the HTTP verb used by forms.
     *
     * @param  string  $method
     * @return IlluminateSupportHtmlString
     */
    
function method_field($method)
    {
        return new 
HtmlString('<input type="hidden" name="_method" value="'.$method.'">');
    }
}

if (! 
function_exists('old')) {
    
/**
     * Retrieve an old input item.
     *
     * @param  string  $key
     * @param  mixed   $default
     * @return mixed
     */
    
function old($key null$default null)
    {
        return 
app('request')->old($key$default);
    }
}

if (! 
function_exists('policy')) {
    
/**
     * Get a policy instance for a given class.
     *
     * @param  object|string  $class
     * @return mixed
     *
     * @throws InvalidArgumentException
     */
    
function policy($class)
    {
        return 
app(Gate::class)->getPolicyFor($class);
    }
}

if (! 
function_exists('public_path')) {
    
/**
     * Get the path to the public folder.
     *
     * @param  string  $path
     * @return string
     */
    
function public_path($path '')
    {
        return 
app()->make('path.public').($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('redirect')) {
    
/**
     * Get an instance of the redirector.
     *
     * @param  string|null  $to
     * @param  int     $status
     * @param  array   $headers
     * @param  bool    $secure
     * @return IlluminateRoutingRedirector|IlluminateHttpRedirectResponse
     */
    
function redirect($to null$status 302$headers = [], $secure null)
    {
        if (
is_null($to)) {
            return 
app('redirect');
        }

        return 
app('redirect')->to($to$status$headers$secure);
    }
}

if (! 
function_exists('request')) {
    
/**
     * Get an instance of the current request or an input item from the request.
     *
     * @param  string  $key
     * @param  mixed   $default
     * @return IlluminateHttpRequest|string|array
     */
    
function request($key null$default null)
    {
        if (
is_null($key)) {
            return 
app('request');
        }

        return 
app('request')->input($key$default);
    }
}

if (! 
function_exists('resource_path')) {
    
/**
     * Get the path to the resources folder.
     *
     * @param  string  $path
     * @return string
     */
    
function resource_path($path '')
    {
        return 
app()->basePath().DIRECTORY_SEPARATOR.'resources'.($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('response')) {
    
/**
     * Return a new response from the application.
     *
     * @param  string  $content
     * @param  int     $status
     * @param  array   $headers
     * @return SymfonyComponentHttpFoundationResponse|IlluminateContractsRoutingResponseFactory
     */
    
function response($content ''$status 200, array $headers = [])
    {
        
$factory app(ResponseFactory::class);

        if (
func_num_args() === 0) {
            return 
$factory;
        }

        return 
$factory->make($content$status$headers);
    }
}

if (! 
function_exists('route')) {
    
/**
     * Generate a URL to a named route.
     *
     * @param  string  $name
     * @param  array   $parameters
     * @param  bool    $absolute
     * @return string
     */
    
function route($name$parameters = [], $absolute true)
    {
        return 
app('url')->route($name$parameters$absolute);
    }
}

if (! 
function_exists('secure_asset')) {
    
/**
     * Generate an asset path for the application.
     *
     * @param  string  $path
     * @return string
     */
    
function secure_asset($path)
    {
        return 
asset($pathtrue);
    }
}

if (! 
function_exists('secure_url')) {
    
/**
     * Generate a HTTPS url for the application.
     *
     * @param  string  $path
     * @param  mixed   $parameters
     * @return string
     */
    
function secure_url($path$parameters = [])
    {
        return 
url($path$parameterstrue);
    }
}

if (! 
function_exists('session')) {
    
/**
     * Get / set the specified session value.
     *
     * If an array is passed as the key, we will assume you want to set an array of values.
     *
     * @param  array|string  $key
     * @param  mixed  $default
     * @return mixed
     */
    
function session($key null$default null)
    {
        if (
is_null($key)) {
            return 
app('session');
        }

        if (
is_array($key)) {
            return 
app('session')->put($key);
        }

        return 
app('session')->get($key$default);
    }
}

if (! 
function_exists('storage_path')) {
    
/**
     * Get the path to the storage folder.
     *
     * @param  string  $path
     * @return string
     */
    
function storage_path($path '')
    {
        return 
app('path.storage').($path DIRECTORY_SEPARATOR.$path $path);
    }
}

if (! 
function_exists('trans')) {
    
/**
     * Translate the given message.
     *
     * @param  string  $id
     * @param  array   $parameters
     * @param  string  $domain
     * @param  string  $locale
     * @return SymfonyComponentTranslationTranslatorInterface|string
     */
    
function trans($id null$parameters = [], $domain 'messages'$locale null)
    {
        if (
is_null($id)) {
            return 
app('translator');
        }

        return 
app('translator')->trans($id$parameters$domain$locale);
    }
}

if (! 
function_exists('trans_choice')) {
    
/**
     * Translates the given message based on a count.
     *
     * @param  string  $id
     * @param  int|array|Countable  $number
     * @param  array   $parameters
     * @param  string  $domain
     * @param  string  $locale
     * @return string
     */
    
function trans_choice($id$number, array $parameters = [], $domain 'messages'$locale null)
    {
        return 
app('translator')->transChoice($id$number$parameters$domain$locale);
    }
}

if (! 
function_exists('url')) {
    
/**
     * Generate a url for the application.
     *
     * @param  string  $path
     * @param  mixed   $parameters
     * @param  bool    $secure
     * @return IlluminateContractsRoutingUrlGenerator|string
     */
    
function url($path null$parameters = [], $secure null)
    {
        if (
is_null($path)) {
            return 
app(UrlGenerator::class);
        }

        return 
app(UrlGenerator::class)->to($path$parameters$secure);
    }
}

if (! 
function_exists('validator')) {
    
/**
     * Create a new Validator instance.
     *
     * @param  array  $data
     * @param  array  $rules
     * @param  array  $messages
     * @param  array  $customAttributes
     * @return IlluminateContractsValidationValidator
     */
    
function validator(array $data = [], array $rules = [], array $messages = [], array $customAttributes = [])
    {
        
$factory app(ValidationFactory::class);

        if (
func_num_args() === 0) {
            return 
$factory;
        }

        return 
$factory->make($data$rules$messages$customAttributes);
    }
}

if (! 
function_exists('view')) {
    
/**
     * Get the evaluated view contents for the given view.
     *
     * @param  string  $view
     * @param  array   $data
     * @param  array   $mergeData
     * @return IlluminateViewView|IlluminateContractsViewFactory
     */
    
function view($view null$data = [], $mergeData = [])
    {
        
$factory app(ViewFactory::class);

        if (
func_num_args() === 0) {
            return 
$factory;
        }

        return 
$factory->make($view$data$mergeData);
    }
}
Онлайн: 1
Реклама