Поиск…
Вступление
замечания
Всего несколько указателей:
-  Мы помещаем определения функций в проверку ( function_exists), чтобы исключить исключения, когда поставщик услуг вызывается дважды.
-  Альтернативный способ - зарегистрировать файл помощников из файла composer.json. Вы можете скопировать логику из самой структуры laravel .
document.php
<?php
if (!function_exists('document')) {
    function document($text = '') {
        return $text;
    }
}
 Создайте файл helpers.php, предположим, пока он живет в app/Helpers/document.php . Вы можете поместить много помощников в один файл (так это делает Laravel), или вы можете разделить их по имени. 
HelpersServiceProvider.php
 Теперь давайте создадим поставщика услуг. Положим это на app/Providers : 
<?php
namespace App\Providers;
class HelpersServiceProvider extends ServiceProvider
{
    public function register()
    {
        require_once __DIR__ . '/../Helpers/document.php';
    }
}
 Вышеупомянутый поставщик услуг загружает файл помощников и автоматически регистрирует вашу настраиваемую функцию. Пожалуйста, убедитесь, что вы зарегистрировали этот HelpersServiceProvider в своем config/app.php у providers : 
'providers' => [
     // [..] other providers
     App\Providers\HelpersServiceProvider::class,
]
использование
 Теперь вы можете использовать document() функции document() всюду в своем коде, например, в шаблонах клинков. Этот пример возвращает только ту же строку, которую он получает в качестве аргумента 
<?php
Route::get('document/{text}', function($text) { 
    return document($text);
});
 Теперь перейдите в /document/foo в своем браузере (используйте php artisan serve или valet ), который вернет foo .