Laravel

Laravel

Tutorial Laravel: Instalación y configuración Laravel

PHP: Aprende a instalar Laravel PHP y Composer, una herramienta clave para gestionar dependencias de proyectos PHP. Sigue estos pasos para una instalación correcta.

Aprende Laravel GRATIS y certifícate

Instalación de Composer

Composer es una herramienta esencial en PHP para gestionar las dependencias de un proyecto. Para instalar Composer en tu sistema, sigue los pasos detallados a continuación.

En primer lugar, verifica que tienes una versión reciente de PHP instalada. Abre una terminal y ejecuta:

php -v

Este comando mostrará la versión de PHP instalada. Si no dispones de PHP, descárgalo desde la página oficial y procede a instalarlo.

A continuación, descarga el instalador de Composer utilizando el siguiente comando:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Este comando emplea cURL para obtener el script de instalación y guardarlo como composer-setup.php en el directorio actual.

Es recomendable verificar la integridad del instalador comparando su hash SHA-384. Obtén el hash oficial desde la página de descargas de Composer y ejecuta:

php -r "if (hash_file('SHA384', 'composer-setup.php') === 'HASH_OFICIAL') { echo 'Instalador verificado'; } else { echo 'Instalador corrupto'; unlink('composer-setup.php'); } echo PHP_EOL;"

Reemplaza 'HASH_OFICIAL' por el hash proporcionado en el sitio oficial. Si el instalador es válido, podrás proceder con la instalación.

Ahora que hemos verificado el instalador vamos a ejecutar el siguiente comando para que se empiecen a instalar Composer:

php composer-setup.php

Una vez instalado Composer, vamos a eliminar el instalador de nuestra carpeta con el siguiente comando:

php -r "unlink('composer-setup.php');"

Para instalar Composer de forma global en Linux, Unix o macOs, ejecuta el siguiente comando:

mv composer.phar /usr/local/bin/composer

Este comando ubicará Composer en /usr/local/bin con el nombre composer, permitiendo su ejecución desde cualquier directorio.

Para confirmar que Composer se ha instalado correctamente, ejecuta:

php composer.phar --version

Deberías ver la versión de Composer instalada en tu sistema. Ahora, Composer está listo para gestionar las dependencias en tus proyectos de PHP.

Instalación de Laravel mediante Composer

Con Composer instalado en tu sistema, es posible instalar Laravel de manera sencilla y eficiente. Laravel utiliza Composer para gestionar sus dependencias, lo que facilita mantener el proyecto actualizado y organizado.

Para comenzar, abre una terminal y navega al directorio donde deseas crear tu nuevo proyecto de Laravel. Por ejemplo:

cd /ruta/a/tu/directorio

Una vez en el directorio correcto, ejecuta el siguiente comando para crear un nuevo proyecto de Laravel utilizando Composer:

php composer.phar create-project laravel/laravel nombre-de-tu-proyecto

Reemplaza nombre-de-tu-proyecto por el nombre que desees asignar a tu aplicación. Este comando descargará la última versión de Laravel y todas sus dependencias en una nueva carpeta con el nombre especificado.

El proceso puede tardar unos minutos, ya que Composer descargará todos los paquetes necesarios. Durante la instalación, Composer establecerá automáticamente los componentes requeridos y generará los archivos de configuración básicos.

Una vez finalizada la instalación, navega al directorio de tu nuevo proyecto:

cd nombre-de-tu-proyecto

Para verificar que la instalación fue exitosa, puedes iniciar el servidor de desarrollo integrado de Laravel con el comando:

php artisan serve

Este comando iniciará un servidor local y mostrará un mensaje indicando la dirección donde se está ejecutando tu aplicación, generalmente http://127.0.0.1:8000. Abre un navegador web y visita esa dirección para ver la página de bienvenida de Laravel.

Si prefieres utilizar el servidor web integrado de PHP, puedes iniciar el servidor con el siguiente comando:

php -S localhost:8000 -t public

Este comando iniciará el servidor en localhost en el puerto 8000, apuntando al directorio public de tu proyecto, que es la raíz pública de tu aplicación Laravel.

Ahora, Laravel está instalado y funcionando en tu entorno local. Puedes comenzar a desarrollar tu aplicación aprovechando las herramientas que ofrece este framework.

En caso de que te salga una pantalla de error con el siguiente mensaje: 

SQLSTATE[HY000]: General error: 1 no such table: 
sessions (Connection: sqlite, SQL: select * from "sessions" 
where "id" = X6Gmh6D0C9C9dQHgMwaPAbc9pWHCUDRKgvWI3fiX limit 1)

Es debido a que por general, no tienes ninguna base de datos cuando empiezas con tu primer proyecto de Laravel, lo recomendable para esto es ejecutar el siguiente comando:

php artisan migrate

Con este comando, realizamos una migración del proyecto, para que este pueda utilizar la base de datos de Laravel y de esta manera se pueda mostrar nuestro proyecto de Laravel recién creado.

Configuración de un entorno de desarrollo local con Visual Studio Code

Para desarrollar aplicaciones en Laravel de manera eficiente, es esencial contar con un entorno de desarrollo bien configurado. Visual Studio Code es una excelente opción como editor de código debido a su flexibilidad y extensibilidad. A continuación, se detallan los pasos para configurar un entorno de desarrollo local utilizando Visual Studio Code.

En primer lugar, descarga e instala Visual Studio Code desde su sitio oficial. Una vez instalado, es recomendable añadir extensiones que mejoren la experiencia de desarrollo con PHP y Laravel.

Abre Visual Studio Code y accede al panel de Extensiones haciendo clic en el ícono correspondiente en la barra lateral izquierda o presionando Ctrl+Shift+X. En el buscador de extensiones, instala las siguientes herramientas recomendadas:

  1. PHP Intelephense: Proporciona autocompletado, navegación de código y diagnósticos avanzados para PHP.
  2. Laravel Blade Snippets: Añade soporte para la sintaxis de plantillas Blade de Laravel, facilitando la edición de vistas.
  3. Laravel Extra Intellisense: Ofrece autocompletado específico para las clases y métodos de Laravel, mejorando la productividad.
  4. PHP Namespace Resolver: Ayuda a gestionar los nombres de espacio y las declaraciones use en PHP, agilizando la organización del código.
  5. GitLens — Git supercharged: Amplía las capacidades de Git integradas en Visual Studio Code, proporcionando información detallada sobre el historial y las contribuciones.

Tras instalar las extensiones, configura el intérprete de PHP para que Visual Studio Code pueda proporcionar diagnósticos y sugerencias de código. Dirígete a Ajustes presionando Ctrl+, o seleccionando Archivo > Preferencias > Configuración. En el buscador de ajustes, escribe "php.validate.executablePath" y establece la ruta al ejecutable de PHP en tu sistema. Por ejemplo:

"php.validate.executablePath": "/usr/bin/php"

Asegúrate de reemplazar "/usr/bin/php" por la ruta correcta según tu instalación de PHP. Esta configuración permite a Visual Studio Code reconocer el intérprete y mejorar la experiencia de edición de código.

A continuación, abre tu proyecto de Laravel en Visual Studio Code seleccionando Archivo > Abrir carpeta y navegando hasta el directorio raíz del proyecto. Una vez abierto, podrás explorar los archivos y carpetas desde el Explorador en la barra lateral.

Para ejecutar comandos de Artisan sin salir del editor, utiliza la terminal integrada de Visual Studio Code. Accede a ella presionando Ctrl+` o seleccionando Ver > Terminal. Dentro de la terminal, verifica que estás en el directorio raíz del proyecto y ejecuta comandos como:

php artisan route:list

Este comando muestra una lista de las rutas definidas en tu aplicación Laravel. La terminal integrada te permite interactuar con Artisan y otros programas sin cambiar de ventana, mejorando el flujo de trabajo.

Para iniciar el servidor de desarrollo, puedes utilizar el comando:

php artisan serve

Este comando arranca un servidor local en http://127.0.0.1:8000, donde podrás visualizar tu aplicación en un navegador. Alternativamente, si prefieres utilizar el servidor web integrado de PHP, ejecuta:

php -S localhost:8000 -t public

Este comando sirve el contenido de la carpeta public en localhost en el puerto 8000. Ambos métodos son válidos y dependen de tus preferencias personales.

Si deseas depurar tu aplicación, instala la extensión PHP Debug:

Nombre: PHP Debug
Editor: Xdebug

Aunque la configuración detallada de Xdebug excede el alcance de esta guía, tener instalada esta extensión te permitirá configurar la depuración en Visual Studio Code cuando lo necesites.

Es importante configurar también la formateación de código para mantener un estilo consistente. Instala una extensión como PHP CS Fixer o Prettier - Code formatter y configura las reglas de formato según los estándares de Laravel.

Además, puedes personalizar atajos de teclado y ajustes del editor para adaptarlos a tus necesidades. Por ejemplo, para habilitar el guardado automático, ve a Archivo > Preferencias > Configuración, busca "files.autoSave" y selecciona la opción "afterDelay".

Con estas configuraciones, tu entorno de desarrollo local con Visual Studio Code estará listo para trabajar eficientemente con Laravel. La combinación de extensiones adecuadas y ajustes personalizados potenciará tu productividad y facilitará el proceso de desarrollo.

Estructura de proyectos Laravel

Al crear una nueva aplicación con Laravel, se genera automáticamente una estructura de directorios y archivos diseñada para organizar el código de manera eficiente y seguir las buenas prácticas de desarrollo. Comprender esta estructura es fundamental para trabajar de forma efectiva con el framework.

A continuación, se detalla la estructura principal de un proyecto Laravel:

  • app/: Es el núcleo de la aplicación. Aquí se ubican la mayoría de las clases que conforman el proyecto, incluyendo controladores, modelos, módulos y manejadores de eventos. Este directorio está subdividido en:
  • Console/: Contiene comandos de Artisan personalizados.
  • Exceptions/: Gestiona las excepciones de la aplicación.
  • Http/: Incluye controladores, middleware y formularios de solicitud.
  • Controllers/: Almacena los controladores de la aplicación.
  • Middleware/: Contiene los middleware que filtran las solicitudes HTTP.
  • Requests/: Maneja la validación y autorización de solicitudes.
  • Models/: Aquí se encuentran los modelos Eloquent de la aplicación.
  • bootstrap/: Incluye el archivo app.php, que inicializa el framework. El subdirectorio cache/ contiene archivos usados para mejorar el rendimiento al cargar la aplicación.
  • config/: Alberga todos los archivos de configuración de la aplicación. Cada archivo corresponde a una faceta específica, como database.php para la configuración de la base de datos o mail.php para los ajustes de correo electrónico.
  • database/: Contiene migraciones, seeders y factories. Las migraciones permiten versionar la estructura de la base de datos, mientras que los seeders y factories facilitan la generación de datos de prueba.
  • public/: Es el único directorio expuesto públicamente. Contiene el archivo index.php, que actúa como punto de entrada para todas las solicitudes, y activos públicos como imágenes, hojas de estilo y scripts JavaScript.
  • resources/: Incluye recursos de vista y activos sin procesar. Se subdivide en:
  • views/: Contiene las vistas de la aplicación escritas en Blade.
  • lang/: Almacena los archivos de localización para soportar múltiples idiomas.
  • js/ y sass/: Incluyen los archivos JavaScript y Sass sin compilar.
  • routes/: Almacena todos los archivos de rutas de la aplicación. Entre ellos:
  • web.php: Define las rutas para la interfaz web.
  • api.php: Contiene las rutas para las APIs RESTful.
  • console.php: Registra comandos de Artisan personalizados.
  • channels.php: Configura los canales de broadcasting para eventos.
  • storage/: Utilizado para almacenar archivos generados por la aplicación. Se divide en:
  • app/: Almacena archivos generados por la aplicación.
  • framework/: Contiene cachés de vistas, sesiones y otros archivos temporales.
  • logs/: Almacena los registros de log de la aplicación.
  • tests/: Incluye las pruebas automatizadas. Se organiza en:
  • Feature/: Contiene pruebas que abarcan múltiples componentes de la aplicación.
  • Unit/: Almacena pruebas unitarias que evalúan clases o métodos individuales.
  • vendor/: Contiene todas las dependencias del proyecto instaladas mediante Composer. Este directorio se genera automáticamente y no debe modificarse manualmente.

En el directorio raíz del proyecto también se encuentran archivos clave:

  • .env: Archivo de entorno que almacena las variables de configuración sensibles, como las credenciales de la base de datos o claves de API. Es importante agregar .env al archivo .gitignore para evitar que esta información se suba al control de versiones.
  • composer.json: Define las dependencias y metadatos del proyecto. Aquí se especifican los paquetes de PHP necesarios para la aplicación.
  • artisan: Es la consola de comandos de Laravel. Permite ejecutar diversas tareas y comandos que simplifican el desarrollo, como migraciones, generación de código y limpieza de cachés.
  • package.json: Similar a composer.json, pero para las dependencias de Node.js. Se utiliza cuando la aplicación incorpora herramientas front-end o utiliza Laravel Mix.
  • webpack.mix.js: Archivo de configuración de Laravel Mix, que define cómo se procesarán y compilarán los activos front-end como Sass y JavaScript.
  • .gitignore: Lista de archivos y directorios que Git debe ignorar al realizar commit. Por defecto, incluye vendor/ y .env, entre otros, para evitar subir archivos sensibles o de gran tamaño.

Esta estructura modular y bien definida permite que los desarrolladores trabajen de forma ordenada, facilitando el mantenimiento y la escalabilidad de la aplicación. Cada componente tiene un lugar específico, y Laravel sigue la convención sobre configuración, lo que significa que, al seguir las convenciones establecidas, se reduce la necesidad de configuraciones adicionales.

Al entender la función de cada directorio y archivo, se puede navegar eficientemente por el proyecto y realizar modificaciones o ampliaciones de manera coherente. Además, esta organización facilita la colaboración en equipo, ya que todos los miembros comparten una estructura común y reconocible.

Es importante destacar que aunque esta es la estructura predeterminada, Laravel ofrece flexibilidad para adaptarse a las necesidades específicas del proyecto, permitiendo reorganizar o añadir componentes según sea necesario sin perder la integridad del framework.

Para seguir leyendo hazte Plus

¿Ya eres Plus? Accede a la app

Plan mensual

19.00 € /mes

Precio normal mensual: 19 €
47 % DE DESCUENTO

Plan anual

10.00 € /mes

Ahorras 108 € al año
Precio normal anual: 120 €
Aprende Laravel GRATIS online

Todas las lecciones de Laravel

Accede a todas las lecciones de Laravel y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Accede GRATIS a Laravel y certifícate

En esta lección

Objetivos de aprendizaje de esta lección

  • Verificar la instalación de PHP adecuada para Composer.
  • Descargar y validar el instalador de Composer.
  • Instalar Composer de forma global en el sistema.
  • Configurar Visual Studio Code para proyectos en PHP y Laravel.
  • Entender la estructura de proyectos Laravel.