Solucione el error de detección de compatibilidad de PHP al que se hace referencia
Hay muchos buenos paquetes que podemos usar en nuestros proyectos basados en PHP y si está usando Composer o GrumPHP, PHPCompatibility es uno que recomiendo incluir en sus proyectos, especialmente si está escribiendo código para algo que se va a ejecutar múltiples versiones de PHP (es decir, en hosts que ofrecen diferentes versiones).
Este es un conjunto de husmeadores para PHP CodeSniffer que verifica la compatibilidad entre versiones de PHP. Le permitirá analizar la compatibilidad de su código con versiones superiores e inferiores de PHP.
Esto es algo que se instala dentro de composer y es algo que recomiendo para las personas que escriben código para WordPress debido a la gran variación que existe dentro de nuestros hosts.
De vez en cuando, sin embargo, es posible que vea un problema como este :
ERROR: Referenced sniff "PHPCompatibility" does not exist
Y si corre $ phpcs -i
, puede recibir un mensaje que no está claro.
Específicamente, si ejecuta ese comando, puede ver esto :
The installed coding standards are PEAR, PSR1, Zend, Squiz, PSR12, PSR2, MySource and PHPCompatibility.
Extraño, ¿verdad? Pero hay una solución simple y tiene que ver con la actualización de los comandos de script posteriores a la instalación y la actualización que ofrece Composer.
Con ese fin, podemos emplear las mismas técnicas para garantizar que PHPCompatibility funcione correctamente si alguna vez ve el mensaje. Simplemente actualice su composer.json
para que se vea así:
"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"
}
Por supuesto, su kilometraje variará según su configuración real, pero la esencia de los comandos debería resolver el problema.