Criar diretório de auxiliares personalizados:
primeiro crie o diretório de auxiliares no diretório de aplicativos.
Criar definição de classe hlper:
Agora vamos criar uma função auxiliar simples que concatenará duas strings. Crie um novo arquivo MyFuncs.php em /app/Helpers/MyFuncs.php Adicione o seguinte código
<?php
namespace App\Helpers;
class MyFuncs {
public static function full_name($first_name,$last_name) {
return $first_name . ', '. $last_name;
}
}
espaço para nome App \ Helpers; define o espaço para nome dos auxiliares em espaço para nome do aplicativo. classe MyFuncs {…} define a classe auxiliar MyFuncs. função estática pública full_name ($ first_name, $ last_name) {…} define uma função estática que aceita dois parâmetros de string e retorna uma string concatenada
O serviço de ajudantes fornece classe
Os provedores de serviços são usados para carregar classes automaticamente. Precisamos definir um provedor de serviços que carregará todas as nossas classes auxiliares no diretório / app / Helpers.
Execute o seguinte comando do artesão:
php artisan make: provider HelperServiceProvider
O arquivo será criado em /app/Providers/HelperServiceProvider.php
Open /app/Providers/HelperServiceProvider.php
Adicione o seguinte código:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class HelperServiceProvider extends ServiceProvider {
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
//
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
foreach (glob(app_path().'/Helpers/*.php') as $filename){
require_once($filename);
}
}
}
AQUI,
namespace App\Providers; defines the namespace provider
use Illuminate\Support\ServiceProvider; imports the ServiceProvider class namespace
class HelperServiceProvider extends ServiceProvider {…} defines a class HelperServiceProvider that extends the ServiceProvider class
public function boot(){…} bootstraps the application service
public function register(){…} is the function that loads the helpers
foreach (glob(app_path().'/Helpers/*.php') as $filename){…} loops through all the files in /app/Helpers directory and loads them.
Agora precisamos registrar o HelperServiceProvider e criar um alias para nossos auxiliares.
Abrir /config/app.php
arquivo
Localize a variável de matriz de provedores
Adicione a seguinte linha
App\Providers\HelperServiceProvider::class,
Localize a variável de matriz de aliases
Adicione a seguinte linha
'MyFuncs' => App\Helpers\MyFuncs::class,
Salve as alterações Usando nosso assistente personalizado
Criaremos uma rota que chamará nossa função auxiliar personalizada. Abra /app/routes.php
Adicione a seguinte definição de rota
Route::get('/func', function () {
return MyFuncs::full_name("John","Doe");
});
AQUI,
return MyFuncs::full_name("John","Doe"); calls the static function full_name in MyFuncs class