Contexto

Continuando con la configuración de un entorno de desarrollo para PHP en Fedora, hoy toca crear un unos ejemplos de PHP, usando código básico desde cero con PHP, clonando un repositorio de gitlab y creando un proyecto utilizando composer

Contenido

  • Configurar directorio de proyectos
  • 1.- Crear Proyecto básico con PHP puro
  • 2.- Clonar proyecto de GitLab
  • 3.- Crear proyecto utilizando composer

Configurar directorio de proyectos:

Crear un enlace simbólico de la ruta /opt/lampp/htdocs en la carpeta personal:

sudo ln -s /opt/lampp/htdocs ~/www

En el directorio www crear un directorio general devs y asignar los siguientes permisos:

cd ~/www
sudo mkdir devs
sudo chmod 775 -R devs
sudo chown -R daemon:tu-usuario devs
cd devs

1.- Crear proyecto básico con PHP puro

La creación de proyecto básico como PHP puro, no requiere más que crear un archivo por ejemplo, index.php en el directorio que se requiera.

Paso 1:

Crear carpeta para el proyecto:

mkdir proyectouno

Paso 2:

cd ~/www/devs/proyectouno

Paso 3:

code . -n

Crear archivo index.php y colocar el siguiente código para iniciar proyecto:

<?php

echo 'Hola mundo malo!';

Guardar el documento.

Paso 4:

Iniciar xampp

sudo /opt/lampp/lampp start

Paso 5:

Acceder a la url del proyecto local http://localhost/devs/proyectouno/

Y listo, así se crea un proyecto PHP desde cero, usando solo php, sin composer ni nada.

2.- Clonar proyecto de GitLab

La otra opción de crear o probar proyectos de PHP, es clonando un proyecto existente, ésto se puede realizar directamente mediante el comando git clone o bien descargar el proyecto .zip desde la página de gitlab y posteriormente entrar al directorio.

a) Ejemplo desde GitLab

El proyecto para éste ejemplo corresponde al enlace https://gitlab.com/linuxitos_/webapp-laravel-10 y fue desarrollado en Laravel 10, usando composer.

Clonar el proyecto y levantarlo en el servidor XAMPP https://gitlab.com/linuxitos_/webapp-laravel-10

cd ~/www/devs/

Clonar el proyecto: Aquí es importante recordar, en la parte 2 de éstos tutoriales, se configuraron varias cuentas de gitlab, por lo que al clonar un repositorio de gitlab, se debe elegir la cuenta o usuario correcto, de no clonarlo con un usuario, posteriormente se debe configurar manualmente el archivo config, para especificar el usuario utilizado

Clonando repositorio sin especificar un usuario:

git clone https://gitlab.com/linuxitos_/webapp-laravel-10

Clonando repositorio con usuario específico:

git clone git@linuxitos.gitlab.com:linuxitos_/webapp-laravel-10.git

Una vez clonado el repositorio, entrar al directorio

cd webapp-laravel-10

Una vez en el directorio aplicar el comando siguiente para abrir Code desde dicho directorio:

code . -n

En el panel lateral izquierdo localizar el archivo env y renombrarlo a .env

Aplicar una actualización de paquetes ed composer con el siguiente comando:

composer update

Y se obtendrá una salida similar a la imagen de abajo:

Renovar la APP_KEY de laravel con el siguiente comando:

php artisan key:generate

Abrir el archivo .env y configurar la conexión a la base de datos, si la base de datos no existe, abrir http://localhost/phpmyadmin y crear una base de datos con el nombre que está especificado en el archivo .env.

Una vez configurado los accesos a la base de datos, ejecutar el comando de la migración:

php artisan migrate:fresh

Una vez migrado las tablas, ya es posible levantar el proyecto con el comando:

php artisan serve

Entrar a la url http://127.0.0.1:8000/login

Y con eso se ha levantado un proyecto desde GitLab

3.- Crear proyecto utilizando Composer

En éste ejemplo se creará un proyecto de laravel utilizando composer:

cd ~/www/devs

Crear el proyecto con el siguiente comando:

composer create-project laravel/laravel proyectodos

En éste ejemplo es básico, por lo que sólo se lanzará el proyecto demostrando que se ha creado correctamente. Entrar al directorio y lanzar el proyecto con el comando:

php artisan serve

Y con eso se ha superado la parte de crear un proyecto con composer.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *