{"id":231826,"date":"2023-01-03T09:40:00","date_gmt":"2023-01-03T06:40:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231826"},"modified":"2023-01-03T09:40:47","modified_gmt":"2023-01-03T06:40:47","slug":"corriger-lerreur-de-reniflage-phpcompatibility-referencee","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fr\/corriger-lerreur-de-reniflage-phpcompatibility-referencee\/","title":{"rendered":"Corriger l&rsquo;erreur de reniflage PHPCompatibility r\u00e9f\u00e9renc\u00e9e"},"content":{"rendered":"<p>Il existe de nombreux packages int\u00e9ressants que nous pouvons utiliser dans nos projets bas\u00e9s sur PHP et si vous utilisez <a href=\"https:\/\/wordpress.mediadoma.com\/fr\/outils-pour-ecrire-un-meilleur-code-wordpress-composer\/\" title=\"Composer\">Composer<\/a> ou <a href=\"https:\/\/wordpress.mediadoma.com\/fr\/bibliotheques-pour-plugins-wordpress-partie-1\/\" title=\"GrumPHP\">GrumPHP<\/a>, <a href=\"https:\/\/github.com\/PHPCompatibility\/PHPCompatibility#installation-in-a-composer-project-method-1\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHPCompatibility<\/a> est celui que je recommande d&rsquo;inclure dans vos projets, en particulier si vous \u00e9crivez du code pour quelque chose qui va traverser plusieurs versions de PHP (c&rsquo;est-\u00e0-dire sur des h\u00f4tes qui proposent diff\u00e9rentes versions).<\/p>\n<blockquote>\n<p>Il s&rsquo;agit d&rsquo;un ensemble de sniffs pour <a href=\"https:\/\/github.com\/squizlabs\/PHP_CodeSniffer\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHP CodeSniffer<\/a> qui v\u00e9rifie la compatibilit\u00e9 entre les versions de PHP. Il vous permettra d&rsquo;analyser votre code pour la compatibilit\u00e9 avec les versions sup\u00e9rieures et inf\u00e9rieures de PHP.<\/p>\n<p><a href=\"https:\/\/github.com\/PHPCompatibility\/PHPCompatibility\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">R\u00e9f\u00e9rentiel de compatibilit\u00e9 PHP<\/a><\/p>\n<\/blockquote>\n<p>C&rsquo;est quelque chose qui doit \u00eatre install\u00e9 dans composer et c&rsquo;est quelque chose que je recommande aux personnes qui \u00e9crivent du code pour WordPress en raison de la grande variation qui existe au sein de nos h\u00f4tes.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158977-61e6ea08c4f9f.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158977-61e6ea08c4f9f.png\" alt=\"Corriger l&#039;erreur de reniflage PHPCompatibility r\u00e9f\u00e9renc\u00e9e\"><\/a><\/p>\n<p>Parfois, cependant, vous pouvez rencontrer un probl\u00e8me <a href=\"https:\/\/gist.github.com\/tommcfarlin\/757d2eee5c7e21cd0bab8f604d0a95d6#file-00-error-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">comme celui<\/a> -ci :<\/p>\n<pre><code>ERROR: Referenced sniff \"PHPCompatibility\" does not exist<\/code><\/pre>\n<p>Et si vous courez, <code>$ phpcs -i<\/code>vous pouvez recevoir un message qui n&rsquo;est pas clair.<\/p>\n<p>Plus pr\u00e9cis\u00e9ment, si vous ex\u00e9cutez cette commande, vous pouvez <a href=\"https:\/\/gist.github.com\/tommcfarlin\/757d2eee5c7e21cd0bab8f604d0a95d6#file-01-php-i-txt\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">voir ceci<\/a>\u00a0:<\/p>\n<pre><code>The installed coding standards are PEAR, PSR1, Zend, Squiz, PSR12, PSR2, MySource and PHPCompatibility.<\/code><\/pre>\n<p>Bizarre, non\u00a0? Mais il existe une solution simple et elle concerne la mise \u00e0 jour des <a href=\"https:\/\/wordpress.mediadoma.com\/fr\/ajout-de-plusieurs-normes-de-codage-avec-composer\/\" title=\"commandes de script post-installation et post-mise \u00e0 jour propos\u00e9es par Composer\">commandes de script post-installation et post-mise \u00e0 jour propos\u00e9es par Composer<\/a>.<\/p>\n<p>\u00c0 cette fin, nous pouvons utiliser les m\u00eames techniques pour nous assurer que PHPCompatibility fonctionne correctement si jamais vous voyez le message. Mettez simplement \u00e0 jour votre <code>composer.json<\/code>pour qu&rsquo;il ressemble \u00e0 ceci\u00a0:<\/p>\n<pre><code>\"require-dev\": {\n  \"phpcompatibility\/php-compatibility\": \"*\"\n},\n\"prefer-stable\": true,\n\"scripts\": {\n  \"post-install-cmd\": \"\"vendor\/bin\/phpcs\" --config-set installed_paths vendor\/phpcompatibility\/php-compatibility\",\n  \"post-update-cmd\": \"\"vendor\/bin\/phpcs\" --config-set installed_paths vendor\/phpcompatibility\/php-compatibility\"\n}<\/code><\/pre>\n<p>Bien s\u00fbr, votre kilom\u00e9trage variera en fonction de votre configuration r\u00e9elle, mais l&rsquo;essentiel des commandes devrait r\u00e9soudre le probl\u00e8me.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Voici un moyen de corriger l&rsquo;erreur \u00ab\u00a0referenced PHPCompatibility sniff\u00a0\u00bb que vous pouvez voir lors de l&rsquo;ex\u00e9cution de la biblioth\u00e8que sur votre code.<\/p>\n","protected":false},"author":1,"featured_media":236933,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[915,893,769,717,780,748,801,841],"tags":[1167],"class_list":["post-231826","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-autre","category-code-2","category-controle-des-sources","category-developpeur","category-logiciels-open-source","category-open-source-projektmanagement-2","category-php-3","category-tutoriels","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/231826","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/comments?post=231826"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/231826\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media\/236933"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media?parent=231826"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/categories?post=231826"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/tags?post=231826"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}