✅ Notizie, temi, plugin WEB e WordPress. Qui condividiamo suggerimenti e le migliori soluzioni per siti web.

PHP_CodeSniffer – Una libreria per migliorare i tuoi standard di codifica PHP

32

Vuoi migliorare i tuoi standard di codifica PHP? Ovviamente sì. Non importa che tu sia uno sviluppatore PHP più fresco o esperto, tutti desiderano migliorare i propri standard di codifica.

Ma come?

Bene, ci sono diverse risorse disponibili su Internet che puoi leggere e iniziare a implementare.

C’è un’altra soluzione che non richiede di leggere sulla codifica standard. Invece, ti dà suggerimenti per migliorare il tuo runtime standard esaminando il tuo file PHP. In questo modo è migliore in quanto otterrai il suggerimento chiaro insieme al numero di riga.

Introduzione a PHP_CodeSniffer

Come suggerisce il nome, PHP_CodeSniffer fiuta il codice nei tuoi file o cartelle. Ovunque, sente l’odore del codice errato che ti fornisce un rapporto su dove si trova il codice errato e quali passaggi dovresti intraprendere per correggerlo. PHP_CodeSniffer agisce come il tuo correttore di codice PHP.

È una libreria altamente consigliata per un programmatore PHP. Mentre lavori su un progetto PHP, non dovresti consegnare il tuo codice al client finale finché non hai finito con gli standard di codifica PHP suggeriti da PHP_CodeSniffer.

Dopotutto, il programmatore PHP dovrebbe fornire un codice migliore e PHP_CodeSniffer ti aiuta per una migliore codifica.

Installa PHP_CodeSniffer usando Composer

Composer è un gestore delle dipendenze per PHP. Ti permette di installare/aggiornare la libreria di cui hai bisogno per il tuo progetto.

Puoi installare PHP_CodeSniffer nella directory principale del tuo progetto. Tuttavia, ti consiglio di creare una cartella "php_codesniffer" nella directory principale e installare la libreria all’interno di questa cartella.

Per installare PHP_CodeSniffer utilizzando il compositore, apri il prompt dei comandi nella directory "php_codesniffer" ed esegui il comando seguente.

composer require "squizlabs/php_codesniffer=*"

PHP_CodeSniffer - Una libreria per migliorare i tuoi standard di codifica PHP

Controlliamo i nostri standard di codifica PHP

Quindi, vai alla php_codesniffer/vendor/bindirectory dal prompt dei comandi. Da questa cartella bin, controlleremo i nostri standard di codifica PHP rispetto a PHP_CodeSniffer.

Ad esempio, supponiamo di avere un file chiamato index.php nel tuo progetto. Il mio file index.php contiene il codice seguente.

<?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;
?>

Questo codice utilizzato per ridimensionare l’immagine in PHP utilizzando la libreria TinyPNG. Il nostro codice funziona correttamente e fornisce un risultato atteso. Ma abbiamo perso alcuni standard di codifica nel nostro file.

Scopriamo quale standard ci manca nel file di cui sopra.

Verificheremo questo file rispetto a PHP_CodeSniffer eseguendo il comando seguente.

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

Stiamo lavorando su Windows, quindi nel nostro caso, un comando sarebbe il seguente.

phpcs --standard=PEAR D:wampwwwapitinypngindex.php

Qui ‘–standard=PEAR’ significa che il nostro file verrà confrontato con lo standard impostato da PEAR.

PHP_CodeSniffer - Una libreria per migliorare i tuoi standard di codifica PHP

Dopo aver eseguito il comando precedente, abbiamo riscontrato alcuni errori sugli standard di codifica.

Correggi il codice utilizzando le linee guida

Facciamo un esempio di errore.

Il secondo errore che dice ‘require_once’ è un’istruzione, non una funzione: non sono necessarie parentesi

Con questo errore, veniamo a conoscenza dello standard per l’inclusione di file esterni.

Il nostro codice qui sotto

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

dovrebbe sostituire con

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

Questo è un esempio di correzione del codice. Nel tuo caso, potresti trovare altri errori. Dovresti correggerlo seguendo le istruzioni che hai ricevuto.

La libreria PHP_CodeSniffer fornisce un comando che corregge automaticamente le violazioni degli standard di codifica. Ricorda, questo comando non corregge tutti gli errori. Si occuperà di alcuni errori minori come il rientro, le parentesi chiuse, ecc.

Se guardi lo screenshot qui sopra, noterai che nel nostro file sono stati trovati 7 errori in totale. Dopo l’elenco degli errori, vedere la riga

‘PHPCBF’ PU RISOLVERE AUTOMATICAMENTE LE 6 VIOLAZIONI SNIFF SEGNATE

PHP_CodeSniffer - Una libreria per migliorare i tuoi standard di codifica PHP

Primo errore relativo al commento del file mancante, dobbiamo occuparci di questo commento al documento. Il comando ‘PHPCBF’ non lo correggerà.

Detto questo, scriviamo il comando per esso.

phpcbf --standard=PEAR D:wampwwwapitinypngindex.php

PHP_CodeSniffer - Una libreria per migliorare i tuoi standard di codifica PHP

Nello screenshot, puoi vedere che ha risolto 6 errori e 1 è rimasto. L’errore rimanente è correlato al commento del documento del file.

Quindi, aggiungeremo il file commentando e il nostro codice finale sarà il seguente.

<?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;
?>

Ora, se eseguiamo lo script ‘phpcs’ non otterremo alcun errore degli standard di codifica PHP.

PHP_CodeSniffer - Una libreria per migliorare i tuoi standard di codifica PHP

Nota: PHP_CodeSniffer convalida anche i tuoi file JS e CSS.

Fonte di registrazione: 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