Ricerca…
introduzione
Osservazioni
Solo alcuni suggerimenti:
- Abbiamo inserito le definizioni delle funzioni all'interno di un controllo (
function_exists
) per evitare eccezioni quando il provider di servizi viene chiamato due volte. - Un modo alternativo è la registrazione del file helpers dal file
composer.json
. È possibile copiare la logica dal framework laravel stesso .
document.php
<?php
if (!function_exists('document')) {
function document($text = '') {
return $text;
}
}
Crea un file helper.php, supponiamo per ora che risieda in app/Helpers/document.php
. Puoi mettere molti helper in un file (questo è come lo fa Laravel) o puoi dividerli per nome.
HelpersServiceProvider.php
Ora creiamo un fornitore di servizi. Mettiamolo sotto app/Providers
:
<?php
namespace App\Providers;
class HelpersServiceProvider extends ServiceProvider
{
public function register()
{
require_once __DIR__ . '/../Helpers/document.php';
}
}
Il fornitore di servizi sopra riportato carica il file degli helper e registra automaticamente la tua funzione personalizzata. Assicurati di registrare questo HelpersServiceProvider nel tuo config/app.php
sotto i providers
:
'providers' => [
// [..] other providers
App\Providers\HelpersServiceProvider::class,
]
Uso
Ora puoi usare la funzione document()
ovunque nel tuo codice, ad esempio nei template blade. Questo esempio restituisce solo la stessa stringa che riceve come argomento
<?php
Route::get('document/{text}', function($text) {
return document($text);
});
Ora vai su /document/foo
nel tuo browser (usa php artisan serve
o valet
), che restituirà foo
.