Korjaa viitattu PHPCompatibility Sniff Error -virhe
On olemassa monia mukavia paketteja, joita voimme käyttää PHP-pohjaisissa projekteissamme, ja jos käytät Composeria tai GrumPHP :tä, suosittelen PHPCompatibilityn sisällyttämistä projektiisi varsinkin jos kirjoitat koodia jollekin, joka tulee ajamaan yli. useita PHP-versioita (eli koneilla, jotka tarjoavat eri versioita).
Tämä on joukko nuuskimia PHP CodeSnifferille, joka tarkistaa PHP-versioiden yhteensopivuuden. Sen avulla voit analysoida koodisi yhteensopivuuden varalta PHP:n uudempien ja alempien versioiden kanssa.
Tämä on jotain, joka asennetaan säveltäjään, ja suosittelen sitä ihmisille, jotka kirjoittavat koodia WordPressille, koska isännissämme on paljon vaihtelua.
Joskus saatat kuitenkin nähdä seuraavanlaisen ongelman :
ERROR: Referenced sniff "PHPCompatibility" does not exist
Ja jos juokset $ phpcs -i
, saatat saada viestin, joka on epäselvä.
Erityisesti, jos suoritat tämän komennon, saatat nähdä tämän :
The installed coding standards are PEAR, PSR1, Zend, Squiz, PSR12, PSR2, MySource and PHPCompatibility.
Outoa, eikö? Mutta siihen on yksinkertainen korjaus, ja se liittyy Composerin tarjoamien asennuksen ja päivityksen jälkeisten komentosarjakomentojen päivittämiseen .
Tätä varten voimme käyttää samoja tekniikoita varmistaaksemme, että PHPCompatibility toimii oikein, jos näet viestin. Päivitä vain composer.json
tältä:
"require-dev": {
"phpcompatibility/php-compatibility": "*"
},
"prefer-stable": true,
"scripts": {
"post-install-cmd": ""vendor/bin/phpcs" --config-set installed_paths vendor/phpcompatibility/php-compatibility",
"post-update-cmd": ""vendor/bin/phpcs" --config-set installed_paths vendor/phpcompatibility/php-compatibility"
}
Tietenkin kilometrimääräsi vaihtelee todellisen asennuksen mukaan, mutta komentojen sisältö ratkaisee ongelman.