Trabajando con Composer y Ejemplos

En los artículos anteriores, analizamos qué es composer, quién lo usa y cómo instalarlo. Aquí cubriremos algunos ejemplos básicos de casos de uso de cómo adquirir paquetes usando la herramienta Composer que configuramos previamente.

los example documentado en este artículo se puede hacer localmente o en su servidor cPanel totalmente administrado de Liquid Web, en cualquier caso, estas instrucciones deben ejecutarse como el usuario propietario de los archivos del sitio web. En un servidor cPanel, esto significaría que está ejecutando estos a través de SSH, inició sesión como usuario de cPanel y estaría comenzando desde public_html.

Ejemplo #1: Obtener GuzzleHTTP usando Composer

Uno de los clientes PHP HTTP más populares, Guzzle es una biblioteca que puede hacer que el envío de solicitudes HTTP sea simple y fácil. Como una biblioteca ampliamente utilizada y bien documentada, Guzzle es un paquete fácil de aprovechar para cualquier desarrollador o diseñador.

Para probar Guzzle, ejecute los siguientes comandos:

$ mkdir guzzleTest
$ cd ./guzzleTest/
$ composer require guzzlehttp/guzzle

Luego crea un archivo index.php en la misma carpeta con el siguiente contenido:

                      <?php
require_once 'vendor/autoload.php';
$client = new GuzzleHttpClient();

// Make a request
$res = $client->request('GET', 'https://www.timeapi.org/utc/now.json');

// Output the status code of the response
echo 'Page response code: '.$res->getStatusCode();
echo "<hr/>";
// "200"

// Output headers of the response
echo 'Response Content-Type header: ';
print_r( $res->getHeader('content-type') );
echo "<hr/>";
// 'application/json; charset=utf8'

// Output the actual content (body) of the response
echo 'Response Body content: ';
echo $res->getBody();
echo "<hr/>";
?>
                    

En el código PHP anterior, las líneas que comienzan con ‘//’ se consideran comentarios y solo están ahí para ayudar a detallar cada paso del script.

Al abrir el nuevo archivo index.php en su navegador, debería aparecer una página que muestre: el código de respuesta HTTP, el encabezado ‘Tipo de contenido’ de la respuesta proporcionada y el contenido real de la respuesta.

Ejemplo #2: Obtener un marco

Si bien Composer se usa principalmente para obtener bibliotecas y paquetes específicos necesarios para que un sitio funcione, también es posible proporcionar un marco completo o CMS usando Composer. Laravel es uno de los muchos marcos PHP populares que usan Composer para distribuir sus archivos principales. Un example de usar composer para obtener Laravel se puede hacer con los siguientes comandos:

$ composer create-project --prefer-dist laravel/laravel ./laraTest

Una vez que se haya ejecutado este comando, el compositor hará una serie de cosas por usted; creará la carpeta “laraTest”, inicializará el archivo composer.json, obtendrá las dependencias necesarias y luego configurará los archivos específicos de Laravel.

Para verificar esto example necesitará cierta familiaridad con el marco de Laravel, sin embargo, puede verificar que el compositor hizo su trabajo al verificar la estructura del archivo. Para verificar la estructura del archivo, ejecute el siguiente comando:

$ ls -lah

Deberías ver una estructura similar a:

                      total 200K
drwxr-xr-x 11 user users 4.0K Aug 8 13:17 .
drwxr-xr-x 10 user nginx 4.0K Aug 8 13:16 ..
drwxr-xr-x 10 user users 4.0K Apr 27 09:01 app
-rwxr-xr-x 1 user users 1.7K Apr 27 09:01 artisan
drwxr-xr-x 3 user users 4.0K Apr 27 09:01 bootstrap
-rw-r--r-- 1 user users 1.3K Apr 27 09:01 composer.json
-rw-r--r-- 1 user users 111K Aug 8 13:17 composer.lock
drwxr-xr-x 2 user users 4.0K Apr 27 09:01 config
drwxr-xr-x 5 user users 4.0K Apr 27 09:01 database
-rw-r--r-- 1 user users 458 Aug 8 13:17 .env
-rw-r--r-- 1 user users 423 Apr 27 09:01 .env.example
-rw-r--r-- 1 user users 61 Apr 27 09:01 .gitattributes
-rw-r--r-- 1 user users 73 Apr 27 09:01 .gitignore
-rw-r--r-- 1 user users 503 Apr 27 09:01 gulpfile.js
-rw-r--r-- 1 user users 212 Apr 27 09:01 package.json
-rw-r--r-- 1 user users 1.1K Apr 27 09:01 phpunit.xml
drwxr-xr-x 2 user users 4.0K Apr 27 09:01 public
-rw-r--r-- 1 user users 1.9K Apr 27 09:01 readme.md
drwxr-xr-x 5 user users 4.0K Apr 27 09:01 resources
-rw-r--r-- 1 user users 567 Apr 27 09:01 server.php
drwxr-xr-x 5 user users 4.0K Apr 27 09:01 storage
drwxr-xr-x 2 user users 4.0K Apr 27 09:01 tests
drwxr-xr-x 29 user users 4.0K Aug 8 13:17 vendor
                    

Related Posts