Anuncios

Bienvenidos sean a este post, hoy veremos como habilitar al composer para instalar las dependencias.

Anuncios

En este post y este otro post establecimos el codigo para el .htaccess e index.php respectivamente, con estos dos archivos vamos a proceder a iniciar nuestro «framework» y para ello usaremos el siguiente comando desde una terminal:

$ php -S localhost:8000 -t webroot
Anuncios

Este deben iniciarlo desde el directorio raiz del proyecto, nos iniciara un servidor web con los archivos almacenados en el directorio webroot, en el terminal nos quedara de la siguiente manera:

tinchicus@dbn001vrt:~/lenguajes/PHP/proyecto$ php -S localhost:8000 -t webroot
PHP 7.3.29-1~deb10u1 Development Server started at Mon Oct 11 18:40:32 2021
Listening on http://localhost:8000
Document root is /home/tinchicus/lenguajes/PHP/proyecto/webroot
Press Ctrl-C to quit.
Anuncios

Si lo probamos con el navegador veremos el mensaje que establecimos en index.php:

Anuncios

Esto nos redireccionara a la pagina para instalar el Composer, pero les recuerdo que nosotros lo hicimos en este post, si no lo tienen sigan los pasos de la pagina (recomendable) y sino los de mi post, en todo caso una vez instalado abran otra terminal y desde esta ejecuten el siguiente comando:

$ composer.phar install
Anuncios

Esto nos instalara lo siguiente:

tinchicus@dbn001vrt:~/lenguajes/PHP/proyecto$ composer.phar install
Loading composer repositories with package information
Updating dependencies
Lock file operations: 2 installs, 0 updates, 0 removals
  - Locking filp/whoops (2.14.4)
  - Locking psr/log (1.1.4)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 2 installs, 0 updates, 0 removals
  - Installing psr/log (1.1.4): Extracting archive
  - Installing filp/whoops (2.14.4): Extracting archive
2 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
1 package you are using is looking for funding.
Use the `composer fund` command to find out more!
tinchicus@dbn001vrt:~/lenguajes/PHP/proyecto$
Anuncios

Como pueden ver nos instalo todas las dependencias necesarias, esto nos creara un directorio nuevo llamado vendor y ahi instalara las dependencias que necesitemos, veamos como quedo en nuestro caso:

tinchicus@dbn001vrt:~/lenguajes/PHP/proyecto$ ls -l vendor/
total 16
-rw-r--r-- 1 tinchicus tinchicus  178 oct 11 19:20 autoload.php
drwxr-xr-x 2 tinchicus tinchicus 4096 oct 11 19:20 composer
drwxr-xr-x 3 tinchicus tinchicus 4096 oct 11 19:20 filp
drwxr-xr-x 3 tinchicus tinchicus 4096 oct 11 19:20 psr
tinchicus@dbn001vrt:~/lenguajes/PHP/proyecto
Anuncios

Si refrescamos la pagina de nuestro proyecto notaremos que ahora esta en blanco y no con el mensaje anterior, ahora volveremos a nuestra pagina index.php y le agregaremos al final de la misma el siguiente bloque:

$config = App\Config::get();

new System\Route($config);
Anuncios

Esto cargara la clase config y establecera nuestro enrutado pero de esto hablaremos en el proximo, por el momento solamente lo establecemos, veamos como quedo el codigo de index.php:

index.php

<?php
if(file_exists('../vendor/autoload.php')){
	require '../vendor/autoload.php';
} else {
	echo "<h1>Por favor instalalo via composer.json</h1>";
	echo "<p>Instrucciones del Composer: <a href='https://getcomposer.org/doc/00-intro.md#globally'>https://getcomposer.org/doc/00-intro.md#globally</a></p>";
	echo "<p>Una vez que se instalo ve al directorio de trabajo en tu terminal o prompt de comando e ingresa 'composer.phar install'</p>";
	exit;
}

define('ENTORNO', 'desarrollo');

if (defined('ENTORNO')){

	switch (ENTORNO){
		case 'desarrollo':
			error_reporting(E_ALL);
		break;

		case 'produccion':
			error_reporting(0);
		break;

		default:
			exit('El entorno no esta configurado correctamente.');
	}

}

$config = App\Config::get();

new System\Route($config);
Anuncios

Nuestro ultimo paso sera crear un archivo llamado Config.php en el directorio app de nuestro proyecto, por el momento lo dejaremos asi y en el proximo post lo configuraremos.

Anuncios

En resumen, hoy hemos visto como instalar con el composer, como iniciar el servidor web con nuestro framework, como se ve sin las dependencias, como instalarlas, como queda despues de realizado, y un par de pasos mas, espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donación

Es para mantenimento del sitio, gracias!

$1.50