2. Instalación y Configuración de Laravel
Instalación y Configuración de Laravel
Section titled “Instalación y Configuración de Laravel”Instalar Laravel vía Composer
Section titled “Instalar Laravel vía Composer”Composer es el gestor de dependencias para PHP que Laravel utiliza para manejar sus paquetes y dependencias. Antes de instalar Laravel, asegúrate de tener instalado:
- PHP >= 8.1
- Composer
- Las extensiones de PHP requeridas (mencionadas en la sección de Introducción)
Instalación global de Laravel Installer
Section titled “Instalación global de Laravel Installer”La forma más rápida de comenzar con Laravel es utilizando el instalador global de Laravel:
composer global require laravel/installerUna vez instalado, puedes crear un nuevo proyecto Laravel con el comando laravel new:
laravel new mi-proyectoInstalación vía Composer create-project
Section titled “Instalación vía Composer create-project”Alternativamente, puedes crear un proyecto Laravel utilizando directamente Composer:
composer create-project laravel/laravel mi-proyectoInstalación de una versión específica
Section titled “Instalación de una versión específica”Si necesitas instalar una versión específica de Laravel, puedes especificarla así:
composer create-project laravel/laravel mi-proyecto 10.*# Navegar al directorio del proyectocd mi-proyecto
# Verificar la instalaciónphp artisan --version# Navegar al directorio del proyectocd mi-proyecto
# Verificar la instalaciónphp artisan --versionConfigurar .env
Section titled “Configurar .env”Laravel utiliza un archivo .env para gestionar la configuración del entorno. Cuando instalas Laravel, se crea automáticamente un archivo .env.example que debes copiar a .env:
cp .env.example .envA continuación, genera una clave de aplicación:
php artisan key:generateConfiguración básica del archivo .env
Section titled “Configuración básica del archivo .env”El archivo .env contiene variables de entorno cruciales para tu aplicación. Aquí están las más importantes que debes configurar:
# Entorno de la aplicaciónAPP_NAME=LaravelAPP_ENV=local # local, production, testing, stagingAPP_KEY=base64:tu-clave-generadaAPP_DEBUG=true # true para desarrollo, false para producciónAPP_URL=http://localhost
# Configuración de la base de datosDB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=laravelDB_USERNAME=rootDB_PASSWORD=
# Configuración de correoMAIL_MAILER=smtpMAIL_HOST=mailhogMAIL_PORT=1025MAIL_USERNAME=nullMAIL_PASSWORD=nullMAIL_ENCRYPTION=nullMAIL_FROM_ADDRESS="hello@example.com"MAIL_FROM_NAME="APP_NAME"Acceder a variables de entorno en el código
Section titled “Acceder a variables de entorno en el código”Para acceder a las variables de entorno en tu código Laravel, puedes utilizar la función helper
env()- El nombre de la variable de entorno que deseas obtener
- Un valor predeterminado (opcional) que se devolverá si la variable no existe
Ejemplo de uso:
$databaseName = env('DB_DATABASE', 'laravel');Sin embargo, es recomendable utilizar el helper
config()$appName = config('app.name');Estructura básica de carpetas
Section titled “Estructura básica de carpetas”Laravel tiene una estructura de carpetas bien organizada. Aquí están los directorios principales y su propósito:
| Directorio | Descripción |
|---|---|
| Contiene el código principal de la aplicación |
| Contiene archivos de inicio y caché |
| Contiene todos los archivos de configuración |
| Contiene migraciones, factories y seeders |
| El punto de entrada de la aplicación y assets públicos |
| Contiene vistas, assets sin compilar y traducciones |
| Contiene todas las definiciones de rutas |
| Contiene logs, caché compilado y archivos generados |
| Contiene pruebas automatizadas |
| Contiene dependencias de Composer (no editar) |
| Subdirectorio | Descripción |
|---|---|
| Comandos Artisan personalizados |
| Manejadores de excepciones |
| Controladores, middleware y requests |
| Modelos Eloquent |
| Proveedores de servicios |
Archivos importantes
Section titled “Archivos importantes”- : Configuración del entorno.env
- : Dependencias y configuración de Composercomposer.json
- : Dependencias de Node.js para frontendpackage.json
- : CLI de Laravelartisan
- owebpack.mix.js: Configuración de compilación de assetsvite.config.js
Servidor local con Artisan
Section titled “Servidor local con Artisan”Laravel incluye un servidor de desarrollo integrado a través de Artisan, que es perfecto para el desarrollo local.
Iniciar el servidor
Section titled “Iniciar el servidor”Para iniciar el servidor de desarrollo:
php artisan servePor defecto, el servidor se ejecuta en
http://localhost:8000Personalizar host y puerto
Section titled “Personalizar host y puerto”Puedes personalizar el host y el puerto:
php artisan serve --host=0.0.0.0 --port=8080Artisan Tinker
Section titled “Artisan Tinker”Laravel incluye Tinker, una REPL (Read-Eval-Print Loop) que te permite interactuar con tu aplicación desde la línea de comandos:
php artisan tinkerEjemplo de uso:
>>> AppModelsUser::count();=> 5>>> $user = AppModelsUser::find(1);=> AppModelsUser {...}>>> $user->email;=> "admin@example.com"Comandos Artisan comunes
Section titled “Comandos Artisan comunes”# Listar todos los comandos disponiblesphp artisan list
# Crear un controladorphp artisan make:controller UserController
# Crear un modelo con migraciónphp artisan make:model Product -m
# Ejecutar migracionesphp artisan migrate
# Limpiar cachéphp artisan cache:clear
# Optimizar la aplicación para producciónphp artisan optimizeConfiguración de idiomas y zona horaria
Section titled “Configuración de idiomas y zona horaria”Laravel proporciona herramientas para internacionalizar tu aplicación y manejar zonas horarias.
Configuración de idioma
Section titled “Configuración de idioma”El idioma predeterminado se configura en
config/app.php'locale' => 'es','fallback_locale' => 'en',Archivos de traducción
Section titled “Archivos de traducción”Los archivos de traducción se almacenan en
resources/lang/{idioma}/Para crear un nuevo archivo de traducción:
- Crea la carpeta del idioma si no existe: resources/lang/es/
- Crea un archivo PHP con las traducciones:
<?phpreturn ['welcome' => 'Bienvenido a nuestra aplicación','goodbye' => 'Hasta pronto',];Uso de traducciones
Section titled “Uso de traducciones”Puedes usar el helper __() para traducir textos:
echo __('messages.welcome');// Muestra: Bienvenido a nuestra aplicaciónO en Blade:
{{ __('messages.welcome') }}Cambiar el idioma en tiempo de ejecución
Section titled “Cambiar el idioma en tiempo de ejecución”// Cambiar el idioma actualApp::setLocale('es');
// Verificar el idioma actualif (App::isLocale('es')) {// Código específico para español}Configuración de zona horaria
Section titled “Configuración de zona horaria”La zona horaria predeterminada se configura en
config/app.php'timezone' => 'America/Mexico_City',Trabajar con fechas
Section titled “Trabajar con fechas”Laravel utiliza Carbon para manejar fechas, que es una extensión de la clase DateTime de PHP:
use CarbonCarbon;
// Fecha actual en la zona horaria de la aplicación$now = Carbon::now();
// Formatear fechaecho $now->format('Y-m-d H:i:s');
// Fecha localizadaecho $now->locale('es')->isoFormat('LLLL');// Ejemplo: "domingo, 15 de junio de 2025 23:34"Próximos pasos
Section titled “Próximos pasos”Ahora que tienes Laravel instalado y configurado, puedes comenzar a desarrollar tu aplicación. Los siguientes pasos podrían ser:
- Configurar la base de datos y crear migraciones
- Definir rutas y controladores
- Crear modelos Eloquent
- Diseñar vistas con Blade