✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

PHP_CodeSniffer – Kirjasto PHP-koodausstandardien parantamiseen

15

Haluatko parantaa PHP-koodausstandardejasi? Ilmeisesti kyllä. Ei ole väliä olet tuoreempi tai kokenut PHP-kehittäjä, kaikki haluavat parantaa koodausstandardejaan.

Mutta miten?

Internetissä on useita resursseja, joita voit lukea ja aloittaa toteuttamisen.

On vielä yksi ratkaisu, joka ei vaadi lukemista tavallisesta koodauksesta. Sen sijaan se antaa sinulle ehdotuksia standardien ajonaikan parantamiseksi katsomalla PHP-tiedostoa. Tämä tapa on parempi, koska saat selkeän ehdotuksen rivinumeron kanssa.

PHP_CodeSnifferin esittely

Kuten nimestä voi päätellä, PHP_CodeSniffer haisee tiedostojesi tai kansioidesi koodin. Mistä tahansa, se haisee huonon koodin, jonka se antaa sinulle, kun ilmoitat, missä huono koodi on ja mitä toimia sinun tulisi tehdä sen korjaamiseksi. PHP_CodeSniffer toimii kuten PHP-koodin tarkistaja.

Se on erittäin suositeltava kirjasto PHP-ohjelmoijalle. Kun työskentelet PHP-projektin parissa, sinun ei pitäisi toimittaa koodiasi loppuasiakkaalle, ennen kuin olet suorittanut PHP_CodeSniffer-ehdotetut PHP-koodausstandardit.

Loppujen lopuksi PHP-ohjelmoijan pitäisi antaa parempi koodi ja PHP_CodeSniffer auttaa sinua parantamaan koodausta.

Asenna PHP_CodeSniffer Composerin avulla

Composer on PHP: n riippuvuuksien hallinta. Sen avulla voit asentaa / päivittää projektille tarvitsemasi kirjaston.

Voit asentaa PHP_CodeSniffer projektisi juurihakemistoon. Mutta suosittelen, että luot juurihakemistoon kansion ‘php_codesniffer’ ja asennat kirjaston tähän kansioon.

Voit asentaa PHP_CodeSniffer säveltäjän avulla avaamalla komentokehotteen hakemistossa ‘php_codesniffer’ ja suorittamalla alla olevan komennon.

composer require "squizlabs/php_codesniffer=*"

PHP_CodeSniffer - Kirjasto PHP-koodausstandardien parantamiseen

Tarkistetaan PHP-koodausstandardimme

Seuraavaksi siirry php_codesniffer/vendor/binkomentokehotteesta hakemistoon. Tästä bin-kansiosta tarkistamme PHP-koodausstandardimme PHP_CodeSniffer -palveluun.

Oletetaan esimerkiksi, että projektissasi on tiedosto nimeltä index.php. Index.php-tiedostoni sisältää alla olevan koodin.

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

Tätä koodia käytettiin kuvan koon muuttamiseen PHP: ssä käyttämällä TinyPNG-kirjastoa. Koodimme toimii hyvin ja antaa odotetun tuloksen. Mutta meiltä puuttui joitain koodausstandardeja tiedostostamme.

Selvitetään, mikä standardi puuttuu yllä olevasta tiedostosta.

Tarkistamme tämän tiedoston PHP_CodeSniffer-ohjelmalla suorittamalla alla olevan komennon.

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

Työskentelemme Windowsissa, joten tapauksessamme komento olisi seuraava.

phpcs --standard=PEAR D:wampwwwapitinypngindex.php

Tässä ‘–standard = PEAR’ tarkoittaa, että tiedostomme tarkistetaan PEARin asettaman standardin mukaisesti .

PHP_CodeSniffer - Kirjasto PHP-koodausstandardien parantamiseen

Yllä olevan komennon suorittamisen jälkeen saimme joitain virheitä koodausstandardeista.

Korjaa koodi käyttämällä ohjeita

Otetaan yksi esimerkki virheestä.

Toinen virhe sanomalla ‘demand_once’ on lause, joka ei ole funktio: sulkeita ei vaadita

Tällä virheellä opimme tuntemaan standardin ulkoisen tiedoston sisällyttämiseksi.

Alla oleva koodi

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

pitäisi korvata

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

Tämä on yksi esimerkki koodin korjaamisesta. Sinun tapauksessasi saatat löytää muita virheitä. Sinun on korjattava se noudattamalla saamiasi ohjeita.

PHP_CodeSniffer-kirjasto tarjoaa yhden komennon, joka korjaa koodauksen vakiorikkomukset automaattisesti. Muista, että tämä komento ei korjaa kaikkia virheitä. Se huolehtii pienistä virheistä, kuten sisennys, sulkeiden sulkeminen jne.

Jos tarkastelet yllä olevaa kuvakaappausta, huomaat, että tiedostostamme löytyy yhteensä 7 virhettä. Katso virheluettelon jälkeen rivi

‘PHPCBF’ voi korjata 6 merkittyä SNIFF-rikkomusta automaattisesti

PHP_CodeSniffer - Kirjasto PHP-koodausstandardien parantamiseen

Ensimmäinen virhe, joka liittyy puuttuvaan tiedostoon doc kommentti, meidän on huolehdittava tästä doc kommentista. ‘PHPCBF’ -komento ei korjaa sitä.

Sanottuamme, kirjoitetaan komento sille.

phpcbf --standard=PEAR D:wampwwwapitinypngindex.php

PHP_CodeSniffer - Kirjasto PHP-koodausstandardien parantamiseen

Kuvakaappauksessa näet, että se on korjannut 6 virhettä ja yksi on jäljellä. Pysyvä virhe liittyy tiedosto doc kommenttiin.

Joten lisätään tiedosto kommentoimalla ja lopullinen koodimme seuraa.

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

Jos suoritamme ‘phpcs’ -komentosarjan, emme saa mitään PHP-koodausstandardivirheitä.

PHP_CodeSniffer - Kirjasto PHP-koodausstandardien parantamiseen

Huomaa: PHP_CodeSniffer vahvistaa myös JS- ja CSS-tiedostosi.

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja