✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

PHP_CodeSniffer: una biblioteca para mejorar sus estándares de codificación PHP

26

¿Quiere mejorar sus estándares de codificación PHP? Obviamente, sí. No importa si es un desarrollador PHP más nuevo o experimentado, todos desean mejorar sus estándares de codificación.

¿Pero cómo?

Bueno, hay varios recursos disponibles en Internet que puede leer y comenzar a implementar.

Hay una solución más que no requiere leer sobre codificación estándar. En cambio, le brinda sugerencias para mejorar el tiempo de ejecución de sus estándares al buscar en su archivo PHP. De esta manera es mejor, ya que obtendrá una sugerencia clara junto con el número de línea.

Introducción a PHP_CodeSniffer

Como sugiere el nombre, PHP_CodeSniffer huele el código en sus archivos o carpetas. Dondequiera que huela el código incorrecto, le informa dónde está el código incorrecto y qué pasos debe seguir para corregirlo. PHP_CodeSniffer actúa como su verificador de código PHP.

Es una biblioteca muy recomendada para un programador PHP. Mientras trabaja en un proyecto PHP, no debe entregar su código al cliente final hasta que haya terminado con los estándares de codificación PHP sugeridos por PHP_CodeSniffer.

Después de todo, el programador de PHP debería ofrecer un mejor código y PHP_CodeSniffer lo ayuda a mejorar la codificación.

Instalar PHP_CodeSniffer con Composer

Composer es un administrador de dependencias para PHP. Le permite instalar / actualizar la biblioteca que necesita para su proyecto.

Puede instalar PHP_CodeSniffer en el directorio raíz de su proyecto. Pero, le recomiendo que cree una carpeta ‘php_codesniffer’ en el directorio raíz e instale la biblioteca dentro de esta carpeta.

Para instalar PHP_CodeSniffer usando Composer, abra el símbolo del sistema en el directorio ‘php_codesniffer’ y ejecute el siguiente comando.

composer require "squizlabs/php_codesniffer=*"

PHP_CodeSniffer: una biblioteca para mejorar sus estándares de codificación PHP

Revisemos nuestros estándares de codificación PHP

A continuación, diríjase al php_codesniffer/vendor/bindirectorio desde el símbolo del sistema. Desde esta carpeta bin, comprobaremos nuestros estándares de codificación PHP con PHP_CodeSniffer.

Por ejemplo, supongamos que tenemos un archivo llamado index.php en su proyecto. Mi archivo index.php contiene el siguiente código.

<?php
require_once ("vendor/autoload.php");
require_once ("config.php");
 
TinifysetKey(TINIFY_KEY);
 
$source = TinifyfromFile("large.jpg");
$resized = $source->resize(
    array(
        "method" => "cover",
        "width" => 150,
        "height" => 100
    ));
$resized->toFile("thumbnail1.jpg");
 
echo "Image resized.";
 
$bool = true;
?>

Este código se usa para cambiar el tamaño de la imagen en PHP usando la biblioteca TinyPNG. Nuestro código funciona bien y da el resultado esperado. Pero, pasamos por alto algunos estándares de codificación en nuestro archivo.

Averigüemos qué estándar nos falta en el archivo anterior.

Comprobaremos este archivo con PHP_CodeSniffer ejecutando el siguiente comando.

phpcs --standard=PEAR /path/to/your/file

Estamos trabajando en Windows, por lo que en nuestro caso, un comando sería el siguiente.

phpcs --standard=PEAR D:wampwwwapitinypngindex.php

Aquí ‘–standard = PEAR’ significa que nuestro archivo se comparará con el estándar establecido por PEAR.

PHP_CodeSniffer: una biblioteca para mejorar sus estándares de codificación PHP

Después de ejecutar el comando anterior, obtuvimos algunos errores sobre los estándares de codificación.

Corrija el código utilizando pautas

Tomemos un ejemplo de error.

El segundo error que dice ‘require_once’ es una declaración, no una función: no se requieren paréntesis

Por este error, llegamos a conocer el estándar para incluir archivos externos.

Nuestro siguiente código

require_once ("vendor/autoload.php");
require_once ("config.php");

debería reemplazar con

require_once "vendor/autoload.php";
require_once "config.php";

Este es un ejemplo de corrección de código. En su caso, puede encontrar otros errores. Debe corregirlo siguiendo las instrucciones que recibió.

La biblioteca PHP_CodeSniffer proporciona un comando que corrige automáticamente las violaciones del estándar de codificación. Recuerde, este comando no corrige todos los errores. Se encargará de algunos errores menores como sangría, cierre de paréntesis, etc.

Si observa la captura de pantalla anterior, notará que se encontraron 7 errores en total en nuestro archivo. Después de la lista de errores, vea la línea

‘PHPCBF’ PUEDE ARREGLAR AUTOMÁTICAMENTE LAS 6 VIOLACIONES DE SNIFF MARCADAS

PHP_CodeSniffer: una biblioteca para mejorar sus estándares de codificación PHP

Primer error relacionado con la falta de un comentario de documento de archivo, tenemos que cuidar este comentario de documento. El comando ‘PHPCBF’ no lo corregirá.

Habiendo dicho eso, escribamos el comando para ello.

phpcbf --standard=PEAR D:wampwwwapitinypngindex.php

PHP_CodeSniffer: una biblioteca para mejorar sus estándares de codificación PHP

En la captura de pantalla, puede ver que se corrigieron 6 errores y queda 1. El error restante está relacionado con el comentario del documento del archivo.

Por lo tanto, agregaremos el comentario del archivo y nuestro código final será el siguiente.

<?php
/**
 * This file will generate the resize version of an image
 *
 * PHP version 5.6.25
 *
 * @category Resize_Image
 * @package  TinyPNG
 * @author   Sajid <[email protected]>
 * @license  http://www.php.net/license/3_01.txt  PHP License 3.01
 * @link     https://artisansweb.net/resize-image-php-using-tinypng
 */
require_once "vendor/autoload.php";
require_once "config.php";
 
TinifysetKey(TINIFY_KEY);
 
$source = TinifyfromFile("large.jpg");
$resized = $source->resize(
    array(
        "method" => "cover",
        "width" => 150,
        "height" => 100
    )
);
$resized->toFile("thumbnail1.jpg");
 
echo "Image resized.";
 
$bool = true;
?>

Ahora, si ejecutamos el script ‘phpcs’, no obtendremos ningún error de estándares de codificación PHP.

PHP_CodeSniffer: una biblioteca para mejorar sus estándares de codificación PHP

Nota: PHP_CodeSniffer también valida sus archivos JS y CSS.

Fuente de grabación: artisansweb.net

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More