تحذير
تم التخلي عن هذا المستودع. خلفها هو phpcsstandards/php_codesniffer
انظر العدد رقم 3932 لمزيد من المعلومات.
PHP_CODESNIFFER عبارة عن مجموعة من البرامج النصية PHP ؛ البرنامج النصي الرئيسي phpcs الذي يميز ملفات PHP و JavaScript و CSS للكشف عن انتهاكات معيار الترميز المحدد ، ونصي phpcbf الثاني لتصحيح الانتهاكات المعيارية للترميز. PHP_CODESNIFFER هي أداة تطوير أساسية تضمن أن الكود الخاص بك يظل نظيفًا ومتسقًا.
يتطلب php_codesniffer إصدار PHP 5.4.0 أو أكثر ، على الرغم من أن شم الشم الفردي قد يكون له متطلبات إضافية مثل التطبيقات الخارجية والبرامج النصية. راجع الصفحة اليدوية لخيارات التكوين للحصول على قائمة بهذه المتطلبات.
إذا كنت تستخدم PHP_CODESNIFFER كجزء من فريق ، أو كنت تقوم بتشغيله على خادم CI ، فقد ترغب في تكوين إعدادات مشروعك باستخدام ملف تكوين.
أسهل طريقة للبدء مع php_codesniffer هي تنزيل ملفات PHAR لكل من الأوامر:
# Download using curl curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar # Or download using wget wget https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar wget https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar # Then test the downloaded PHARs php phpcs.phar -h php phpcbf.phar -h
إذا كنت تستخدم الملحن ، يمكنك تثبيت php_codesniffer على مستوى النظام مع الأمر التالي:
يتطلب الملحن العالمي "squizlabs/php_codesniffer =*"
تأكد من أن لديك الملحن بن دير في طريقك. القيمة الافتراضية هي ~/.composer/vendor/bin/ ، ولكن يمكنك التحقق من القيمة التي تحتاج إلى استخدامها عن طريق تشغيل composer global config bin-dir --absolute .
أو بدلاً من ذلك ، قم بتضمين التبعية لـ squizlabs/php_codesniffer في ملف composer.json الخاص بك. على سبيل المثال:
{"require-dev": {"squizlabs/php_codesniffer": "3.*"}
}ستتمكن بعد ذلك من تشغيل PHP_CODESNIFFER من دليل بن البائع:
./vendor/bin/phpcs -h ./vendor/bin/phpcbf -h
إذا كنت تستخدم Phive ، فيمكنك تثبيت php_codesniffer كأداة للمشروع باستخدام الأوامر التالية:
Phive تثبيت phpcs Phive تثبيت PHPCBF
ستتمكن بعد ذلك من تشغيل php_codesniffer من دليل الأدوات:
./tools/phpcs -h ./tools/phpcbf -h
إذا كنت تستخدم Pear ، فيمكنك تثبيت php_codesniffer باستخدام مثبت الكمثرى. هذا سيجعل أوامر phpcs و phpcbf متاحة على الفور للاستخدام. لتثبيت php_codesniffer باستخدام مثبت الكمثرى ، تأكد أولاً من تثبيت الكمثرى ثم تشغيل الأمر التالي:
Pear تثبيت php_codesniffer
يمكنك أيضًا تنزيل مصدر PHP_CODESNIFFER وتشغيل أوامر phpcs و phpcbf مباشرة من استنساخ GIT:
git clone https://github.com/squizlabs/php_codesniffer.gitcd php_codesniffer PHP BIN/PHPCS -H PHP BIN/PHPCBF -H
معيار الترميز الافتراضي الذي يستخدمه PHP_CODESNIFFER هو معيار ترميز الكمثرى. للتحقق من ملف مقابل معيار ترميز الكمثرى ، ما عليك سوى تحديد موقع الملف:
phpcs/path/to/code/myfile.php
أو إذا كنت ترغب في التحقق من دليل كامل ، يمكنك تحديد موقع الدليل بدلاً من ملف.
phpcs/path/to/code-directory
إذا كنت ترغب في التحقق من الرمز الخاص بك مقابل معيار ترميز PSR-12 ، فاستخدم وسيطة سطر الأوامر- --standard :
PHPCS-standard = psr12/path/to/code-directory
إذا وجدت php_codesniffer أي أخطاء قياسية للترميز ، فسيتم عرض تقرير بعد تشغيل الأمر.
تتوفر معلومات الاستخدام الكاملة وتقارير المثال على صفحة الاستخدام.
تتوفر وثائق PHP_CODESNIFFER على جيثب ويكي.
يمكن تقديم تقارير الأخطاء وطلبات الميزات على متتبع قضية Github.
انظر المساهمة. md للحصول على المعلومات.
يستخدم php_codesniffer تنسيق رقم إصدار MAJOR.MINOR.PATCH .
يتم زيادة النسخة MAJOR عندما:
يتم إجراء تغييرات متوافقة مع الوراء على كيفية استخدام أوامر phpcs أو phpcbf ، أو
يتم إجراء تغييرات متوافقة مع الوراء على تنسيق ruleset.xml ، أو
يتم إجراء تغييرات متوافقة مع الخلف على واجهة برمجة التطبيقات التي يستخدمها مطورو شم ، أو
تتم إزالة أنواع الرمز المميز المخصص php_codesniffer ، أو
تتم إزالة شم الشم الموجود من php_codesniffer بالكامل
يتم زيادة النسخة MINOR عندما:
تتم إضافة ميزات جديدة متوافقة مع الوراء إلى أوامر phpcs و phpcbf ، أو
يتم إجراء تغييرات متوافقة مع الوراء على تنسيق ruleset.xml ، أو
يتم إجراء تغييرات متوافقة مع الوراء على واجهة برمجة التطبيقات التي يستخدمها مطورو شم ، أو
تتم إضافة شم جديد إلى معيار مضمن ، أو
تتم إزالة شم الشم الموجود من معيار مضمن
ملاحظة: ستسمح التغييرات المتوافقة مع متناول الجميع في واجهة برمجة التطبيقات التي يستخدمها مطورو شم شم شم موجود بمواصلة الجري دون إنتاج أخطاء مميتة ولكن قد لا تؤدي إلى الإبلاغ عن شم نفس الأخطاء كما حدث سابقًا دون حاجة إلى تغييرات.
يتم زيادة إصدار PATCH عندما:
يتم إجراء إصلاحات أخطاء متوافقة مع الوراء
ملاحظة: نظرًا لوجود PHP_CODESNIFFER للإبلاغ عن المشكلات وإصلاحها ، فإن معظم الأخطاء هي نتيجة لترميز الأخطاء المعيارية التي يتم الإبلاغ عنها بشكل غير صحيح أو عدم الإبلاغ عن الأخطاء القياسية لترميزها. هذا يعني أن الرسائل التي تنتجها PHP_CODESNIFFER ، والإصلاحات التي تقوم بها ، من المحتمل أن تكون مختلفة بين إصدارات التصحيح.