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

namespace IlluminateTranslation;

trait 
CreatesPotentiallyTranslatedStrings
{
    
/**
     * Create a pending potentially translated string.
     *
     * @param  string  $attribute
     * @param  string|null  $message
     * @return IlluminateTranslationPotentiallyTranslatedString
     */
    
protected function pendingPotentiallyTranslatedString($attribute, $message)
    {
        
$destructor = $message === null
            
? fn ($message) => $this->messages[] = $message
            
: fn ($message) => $this->messages[$attribute] = $message;

        return new class(
$message ?? $attribute, $this->validator->getTranslator(), $destructor) extends PotentiallyTranslatedString
        
{
            
/**
             * The callback to call when the object destructs.
             *
             * @var Closure
             */
            
protected $destructor;

            
/**
             * Create a new pending potentially translated string.
             *
             * @param  string  $message
             * @param  IlluminateContractsTranslationTranslator  $translator
             * @param  Closure  $destructor
             */
            
public function __construct($message, $translator, $destructor)
            {
                
parent::__construct($message, $translator);

                
$this->destructor = $destructor;
            }

            
/**
             * Handle the object's destruction.
             *
             * @return void
             */
            
public function __destruct()
            {
                (
$this->destructor)($this->toString());
            }
        };
    }
}
Онлайн: 2
Реклама