Поиск…


Вступление

Добавление пользовательских помощников может помочь вам с вашей скоростью разработки. При написании таких вспомогательных функций нужно учитывать несколько вещей, поэтому этот учебник.

замечания

Всего несколько указателей:

  • Мы помещаем определения функций в проверку ( 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 .



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow