شم رمز PHP مخصص Sniffer للمساعدة في العثور على فئات غير متوافقة مع Autoloader PSR-4.

يرجى زيارة ./tests/demo ، إذا كنت ترغب في تجربة هذا الشم.
يغطي هذا الشم ليس فقط الفئات ولكن أيضًا واجهات وسمات.
يتحقق هذا الشم ما إذا كانت كل من مساحات الأسماء وأسماء الفصول تتطابق مع بنية مشروع PSR-4.
نظرًا لأن هذا الشم يحترم تكوين composer.json التحميل التلقائي ، فلا يتعين عليك إعلان التعيين بين بادئات مساحة الاسم والأدلة الأساسية.
يقوم PSR4Fixer بفحص ما إذا كان يجب أن تتطابق أسماء الفصول مع اسم الملف وإصلاح أسماء الفصول إذا كانت لا تتوافق مع أسماء الملفات. لا يتحقق من مساحات الأسماء.
في المقابل ، لا تتحقق Suin/PHPCS-PSR4-SNIFF فقط من أسماء الفصول ولكن أيضًا مساحات الأسماء.
slevomatcodingstandard.files.typenameMeMeMeMeMatsFilename هو شم رمز PHP مخصص للتحقق مما إذا كانت مساحات الأسماء وأسماء الفصول تتبع هيكل مشروع PSR-0/PSR-4.
يشبه هذا الشم SUIN/PHPCS-PSR4-SNIFF ، لكنه يحتاج إلى تكوين صريح حول بنية مشروع PSR-0/PSR-4. يأخذ Suin/PHPCS-PSR4-SNIFF طريقة ضمنية لأنه يتبع تكوين التلقائي للملحن.
composer require --dev suin/phpcs-psr4-sniff
في البداية ، قم بإنشاء ملف قواعد PHPCS XML (phpcs.xml.dist أو phpcs.xml) في جذر مشروعك.
<? xml version = " 1.0 " ?>
< ruleset name = " My Project " >
<!-- Specify directory that composer.json is placed. Usually it would be
project root directory. -->
< arg name = " basepath " value = " . " />
<!-- Relative path to your ruleset.xml -->
< rule ref = " vendor/suin/phpcs-psr4-sniff/src/Suin " />
<!-- Optional: If you have to specify composer.json path, please add
following section. -->
< rule ref = " Suin.Classes.PSR4 " >
< properties >
<!-- composerJsonPath must be relative path to "basepath" -->
< property name = " composerJsonPath " value = " sub-dir/composer.json " />
</ properties >
</ rule >
</ ruleset >ثم قم بتشغيله مع الأمر:
vendor/bin/phpcs src
يرجى الاطلاع على changelog لمزيد من التفاصيل.
أرسل قضية أو طلب سحب إلى المستودع الرئيسي.