En Laravel, las plantillas Blade no permiten importar directamente clases como en PHP estándar. Sin embargo, puedes usar las clases dentro de las plantillas utilizando su nombre completo o aprovechando la función @php
para importar y utilizarlas de forma más limpia.
Puedes utilizar el nombre completo (namespace completo) de la clase directamente en la plantilla Blade. Por ejemplo:
@php
$fechaActual = \Carbon\Carbon::now();
@endphp
<p>La fecha y hora actual es: {{ $fechaActual }}</p>
Esto funciona bien para usos ocasionales, pero puede hacer que el código sea más difícil de leer si usas clases largas.
Para mejorar la legibilidad, puedes usar la directiva @php
para asignar la clase a una variable antes de usarla:
@php
use Carbon\Carbon;
$fechaActual = Carbon::now();
@endphp
<p>La fecha y hora actual es: {{ $fechaActual }}</p>
Otra opción es realizar operaciones con la clase en el controlador y pasar el resultado a la vista como una variable. Por ejemplo:
En el controlador:
use Carbon\Carbon;
public function mostrarVista()
{
$fechaActual = Carbon::now();
return view('mi-vista', compact('fechaActual'));
}
En la vista:
<p>La fecha y hora actual es: {{ $fechaActual }}</p>
Si necesitas utilizar una clase frecuentemente en tus vistas, considera crear un helper en Laravel que encapsule la funcionalidad y esté disponible globalmente.
Por ejemplo, un helper para obtener la fecha actual:
// Archivo: app/helpers.php
function fechaActual()
{
return \Carbon\Carbon::now();
}
En Blade:
<p>La fecha y hora actual es: {{ fechaActual() }}</p>
Consulta la documentación sobre vistas en Blade en laravel.com/docs/blade.
Jorge García
Fullstack developer