Crear helpers en laravel 11: guía y ejemplos
En Laravel un helper es una función o clase auxiliar diseñada para realizar tareas comunes de manera sencilla y reutilizable en toda la aplicación. Los helpers simplifican el código, mejoran la legibilidad y evitan repetir lógica en múltiples lugares. En Laravel 11, los helpers pueden ser funciones globales integradas, funciones personalizadas o clases con métodos estáticos. A continuación, te explico qué son, cómo funcionan y su propósito de forma clara y concisa.Para crear un helper hay que:
- Crear la carpeta "App/Helpers". Si no existe.
- Crear una clase dentro de esa carpeta.
- Dentro de esa clase invocar al namespace de los helpers: "namespace App\Helpers;".
- Crear la clase con sus métodos.
- Invocar al helper dentro de la clase donde se vaya a usar: use "App\Helpers\NombreDelHelper;".
- Instanciar el objeto de la clase helper y usarla como una clase normal.
namespace App\Helpers;
class CurrencyHelper
{
/**
* Formatea un monto numérico como moneda.
*
* @param float $amount
* @param string $currency
* @return string
*/
public static function format($amount, $currency = 'USD')
{
return $currency . ' ' . number_format($amount, 2, '.', ',');
}
/**
* Convierte un monto a otra moneda (ejemplo simple).
*
* @param float $amount
* @param string $fromCurrency
* @param string $toCurrency
* @return float
*/
public static function convert($amount, $fromCurrency, $toCurrency)
{
// Ejemplo: tasa de conversión fija (puedes usar una API real)
$rates = [
'USD' => ['EUR' => 0.85],
'EUR' => ['USD' => 1.18],
];
return $amount * ($rates[$fromCurrency][$toCurrency] ?? 1);
}
}
namespace App\Http\Controllers;
use App\Helpers\CurrencyHelper;
...
class ChangeCurrencytontroller extends Controller
{
.....
public funcion showCurrencyFormat(){
...
//llamada a método estático
$formatted = CurrencyHelper::format(1234.567);
//Si el helper CurrencyHelpertuviese un método public sería
$currencyHelperOBJ = new CurrencyHelper();
$currencyHelperOBJ->nombreMetodo();
...
}