Parandage viidatud PHP-ühilduvuse nuusutamise viga
Meil on palju toredaid pakette, mida saame oma PHP-põhistes projektides kasutada ja kui kasutate Composerit või GrumPHP -d, soovitan PHPCompatibility programmi kaasata oma projektid, eriti kui kirjutate koodi millegi jaoks, mis jookseb üle mitu PHP versiooni (st erinevaid versioone pakkuvates hostides).
See on PHP CodeSnifferi nuusutuste komplekt, mis kontrollib PHP versioonidevahelist ühilduvust. See võimaldab teil analüüsida oma koodi ühilduvust PHP kõrgemate ja madalamate versioonidega.
See on midagi, mis installitakse heliloojasse ja see on midagi, mida ma soovitan inimestele, kes kirjutavad WordPressi koodi, kuna meie hostides on erinevusi.
Mõnikord võite siiski näha sellist probleemi :
ERROR: Referenced sniff "PHPCompatibility" does not exist
Ja kui jooksete $ phpcs -i
, võite saada ebaselge sõnumi.
Täpsemalt, kui käivitate selle käsu, võite näha järgmist:
The installed coding standards are PEAR, PSR1, Zend, Squiz, PSR12, PSR2, MySource and PHPCompatibility.
Kummaline, eks? Kuid seal on lihtne lahendus ja see on seotud Composeri pakutavate installi- ja värskendusjärgsete skriptikäskude värskendamisega .
Sel eesmärgil saame kasutada samu tehnikaid, et tagada PHPCompatibility korrektne toimimine, kui te kunagi sõnumit näete. Lihtsalt värskendage oma composer.json
, et see näeks välja selline:
"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"
}
Muidugi sõltub teie läbisõit tegelikust seadistusest, kuid käskude põhisisu peaks probleemi lahendama.