توفر صورة Docker أدوات تحليل ثابتة لـ PHP. تتم إدارة قائمة الأدوات المتاحة والمثبت فعليًا في مستودع jakzal/toolbox
.
مستودع مركز Docker: https://hub.docker.com/r/jakzal/phpqa/
الإصدارات الليلية: https://hub.docker.com/r/jakzal/phpqa-nightly/
latest
، debian
(Dockerfile)1.99.0
، 1.99
، 1.99.0-debian
، 1.99-debian
(ملف دوكر)1.99.0-php8.1
، 1.99-php8.1
، php8.1-debian
، php8.1
(Dockerfile)1.99.0-php8.2
، 1.99-php8.2
، php8.2-debian
، php8.2
(Dockerfile)1.99.0-php8.3
، 1.99-php8.3
، php8.3-debian
، php8.3
(Dockerfile)alpine
(ملف دوكر)1.99.0-alpine
، 1.99-alpine
، (دوكرفيل)1.99.0-php8.1-alpine
، 1.99-php8.1-alpine
، php8.1-alpine
(Dockerfile)1.99.0-php8.2-alpine
، 1.99-php8.2-alpine
، php8.2-alpine
(Dockerfile)1.99.0-php8.3-alpine
، 1.99-php8.3-alpine
، php8.3-alpine
(Dockerfile) يتم التحديث يوميًا: latest
، و debian
، alpine
، php8.4
، و php8.4-alpine
، وما إلى ذلك. يتم التحديث عند تغيير إصدار التصحيح: 1.61
، 1.61-php8.4
، 1.61-php8.4-alpine
، وما إلى ذلك. لم يتم التحديث مطلقًا: 1.61.0
, 1.61.0-php8.4
, 1.61.0-php8.4-alpine
، إلخ.
هذه هي أحدث العلامات لإصدارات PHP التي لم تعد مدعومة:
1.92.7-php8.0
، 1.93-php8.0
، php8.0-debian
، php8.0
(Dockerfile)1.92.7-php8.0-alpine
، 1.93-php8.0-alpine
، php8.0-alpine
(Dockerfile)1.80.0-php7.4
، 1.80-php7.4
، php7.4-debian
، php7.4
(Dockerfile)1.80.0-php7.4-alpine
، 1.80-php7.4-alpine
، php7.4-alpine
(Dockerfile)1.61.2-php7.3
، 1.61-php7.3
، php7.3-debian
، php7.3
(debian/Dockerfile)1.61.2-php7.3-alpine
، 1.61-php7.3-alpine
، php7.3-alpine
(alpine/Dockerfile)1.44.0-php7.2
، 1.44-php7.2
، php7.2
(7.2/debian/Dockerfile)1.44.0-php7.2-alpine
، 1.44-php7.2-alpine
، php7.2-alpine
(7.2/alpine/Dockerfile)1.26.0-php7.1
، 1.26-php7.1
، php7.1
(7.1/debian/Dockerfile)1.26.0-php7.1-alpine
، 1.26-php7.1-alpine
، php7.1-alpine
(7.1/alpine/Dockerfile) اسم | وصف | بي إتش بي 8.1 | بي إتش بي 8.2 | بي إتش بي 8.3 | بي إتش بي 8.4 |
---|---|---|---|---|---|
behat | يساعد على اختبار توقعات الأعمال | ||||
صندوق | أداة تجميع التطبيقات السريعة والصفرية مع PHARs | ||||
مربع-3 | أداة تجميع التطبيقات السريعة والصفرية مع PHARs | ||||
زبد | يكتشف المرشحين الجيدين لإعادة البناء | ||||
com.codeception | Codeception هو إطار اختبار PHP على غرار BDD | ||||
الملحن | مدير التبعية ل PHP | ||||
الملحن بن البرنامج المساعد | البرنامج المساعد للملحن لتثبيت بائعي بن في مواقع معزولة | ||||
تطبيع الملحن | البرنامج المساعد للملحن لتطبيع ملفات Composer.json | ||||
الملحن يتطلب المدقق | تأكد من عدم استخدام أي رموز غير معروفة في مصادر الحزمة. | ||||
الملحن يتطلب المدقق 3 | تأكد من عدم استخدام أي رموز غير معروفة في مصادر الحزمة. | ||||
الملحن غير مستخدم | أظهر الحزم غير المستخدمة عن طريق مسح الكود الخاص بك | ||||
com.dephpend | اكتشاف العيوب في الهندسة المعمارية الخاصة بك | ||||
كاشف الإهمال | يجد استخدامات التعليمات البرمجية المهملة | ||||
ديبتراك | يفرض قواعد التبعية بين طبقات البرنامج | ||||
diffFilter | يطبق أدوات ضمان الجودة للتشغيل بناءً على طلب سحب واحد | ||||
ecs | يقوم بإعداد وتشغيل فحوصات الترميز القياسية | ||||
عدوى | إطار اختبار طفرة PHP القائم على AST | ||||
لاراستان | امتداد PHPStan لـ Laravel | ||||
مدقق أمان php المحلي | التحقق من تبعيات الملحن بحثًا عن الثغرات الأمنية المعروفة | ||||
الوبر المتوازي | يتحقق من بناء جملة ملف PHP | ||||
com.paratest | الاختبار المتوازي لـ PHPUnit | ||||
pdepend | أداة التحليل الثابت | ||||
الآفات | إطار اختبار PHP الأنيق | ||||
فان | أداة التحليل الثابت | ||||
خلية | بيئة التثبيت والتحقق من PHAR | ||||
PHP-CS-المثبت | PHP معايير الترميز المثبت | ||||
php-fuzzer | أداة غامضة لـ PHP، والتي يمكن استخدامها للعثور على الأخطاء في المكتبات عن طريق تغذيتها بمدخلات "عشوائية". | ||||
php-semver-checker | يقترح الإصدار التالي وفقًا للإصدار الدلالي | ||||
phpa | التحقق من الافتراضات الضعيفة | ||||
com.phparkitect | يساعد على وضع القيود المعمارية في قاعدة كود PHP | ||||
phpat | أداة اختبار الهندسة المعمارية سهلة الاستخدام | ||||
phpbench | إطار عمل PHP المعياري | ||||
phpca | يجد استخدام الملحقات غير المضمنة | ||||
phpcb | متصفح كود PHP | ||||
phpcbf | يقوم تلقائيًا بتصحيح انتهاكات معايير الترميز | ||||
phpcodesniffer-composer-install | سهولة تثبيت معايير الترميز PHP_CodeSniffer (مجموعات القواعد). | ||||
phpkov | واجهة سطر أوامر لمكتبة PHP_CodeCoverage | ||||
phpcpd | كاشف النسخ واللصق | ||||
phpcs | يكتشف انتهاكات معايير الترميز | ||||
phpcs-الأمن-التدقيق | يبحث عن نقاط الضعف ونقاط الضعف المتعلقة بالأمان في كود PHP | ||||
phpdd | يجد استخدام الميزات المهملة | ||||
phpDocumentor | مولد التوثيق | ||||
phpinsights | يحلل جودة التعليمات البرمجية والأسلوب والهندسة المعمارية والتعقيد | ||||
phplint | ينس ملفات PHP بالتوازي | ||||
phploc | أداة لقياس حجم مشروع PHP بسرعة | ||||
phpmd | أداة للعثور على المشاكل في كود PHP | ||||
phpmetrics | أداة التحليل الثابت | ||||
phpmnd | يساعد على كشف الأرقام السحرية | ||||
phpspec | إطار SpecBDD | ||||
com.phpstan | أداة التحليل الثابت | ||||
كود phpstan المحظور | قواعد PHPStan لاكتشاف المكالمات لوظائف محددة لا تريدها في مشروعك | ||||
phpstan-beberlei-assert | امتداد PHPStan لـ beberlei/assert | ||||
قواعد إهمال phpstan | قواعد PHPStan للكشف عن التعليمات البرمجية المهملة | ||||
عقيدة phpstan | ملحقات العقيدة ل PHPStan | ||||
قواعد-phpstan-ergebnis | قواعد إضافية ل PHPstan | ||||
قواعد استثناء phpstan | قواعد PHPStan للاستثناءات المحددة وغير المحددة | ||||
phpstan-larastan | تركيب منفصل لphpstan لاراستان | ||||
phpstan-phpunit | ملحقات PHPUnit وقواعد PHPStan | ||||
phpstan-قواعد صارمة | قواعد صارمة ومحددة للغاية لـ PHPStan | ||||
phpstan-symfony | ملحق Symfony لـ PHPStan | ||||
phpstan-webmozart-assert | امتداد PHPStan لـ webmozart/assert | ||||
phpunit | إطار اختبار PHP | ||||
فبونيت-10 | إطار اختبار PHP (الإصدار 10.x) | ||||
فبونيت-8 | إطار اختبار PHP (الإصدار 8.x) | ||||
فبونيت-9 | إطار اختبار PHP (الإصدار 9.x) | ||||
نصف لتر | مُثبت نمط كود PHP المثبت لـ Laravel | ||||
مزمور | يجد أخطاء في تطبيقات PHP | ||||
مزمور البرنامج المساعد العقيدة | بذرة للسماح للمزمور بفهم العقيدة بشكل أفضل | ||||
مزمور-البرنامج المساعد-phpunit | البرنامج المساعد مزمور لPHPUnit | ||||
مزمور-البرنامج المساعد-symfony | البرنامج المساعد مزمور لSymfony | ||||
تحليل نفسي | يقوم بمسح الكود بحثًا عن المشكلات المحتملة المتعلقة بالأمان | ||||
رئيس الجامعة | أداة للترقيات الفورية للكود وإعادة البناء | ||||
التحقق من التوافق مع الإصدارات السابقة | أداة لمقارنة مراجعتين لفئة API للتحقق من فواصل BC | ||||
simple-phpunit | يوفر أدوات مساعدة للإبلاغ عن الاختبارات القديمة واستخدام التعليمات البرمجية المهملة | ||||
غصين-CS-المثبت | يقوم تلقائيًا بتصحيح ملفات twig باتباع القواعد القياسية الرسمية للترميز | ||||
غصين الوبر | مستقل CLI غصين 1.X لينتر | ||||
غصين لتر | مستقل CLI غصين 3.X linter | ||||
com.twigcs | أسلوب الاختيار المفقود للغصين! | ||||
yaml لينت | أداة مدمجة لسطر الأوامر للتحقق من بناء جملة ملف YAML |
لم يتم تضمين بعض الأدوات في صورة عامل الإرساء، لاستخدامها راجع وثائقها:
اسم | ملخص |
---|---|
تحليل | تصور المقاييس وكود المصدر |
box-legacy | نسخة قديمة من الصندوق |
تطبيع الملحن | البرنامج المساعد للملحن لتطبيع ملفات Composer.json |
نمط التصميم | يكتشف أنماط التصميم |
الوبر المتوازي | يتحقق من بناء جملة ملف PHP |
كاشف اقتران php | يكتشف مشاكل اقتران التعليمات البرمجية |
PHP المنسق | مُثبت معايير الترميز المخصص |
phpcf | يجد استخدام الميزات المهملة |
phpda | يولد الرسوم البيانية التبعية |
phpdoc إلى typehint | يضيف تلقائيًا تلميحات الكتابة وأنواع الإرجاع بناءً على PHPDocs |
قواعد phpstan-localheinz | قواعد إضافية ل PHPstan |
مدقق الأمان | التحقق من تبعيات الملحن بحثًا عن الثغرات الأمنية المعروفة |
قابلية الاختبار | يحلل ويبلغ عن مشكلات قابلية الاختبار لقاعدة تعليمات php |
اسحب الصورة:
docker pull jakzal/phpqa
سيسرد الأمر الافتراضي الأدوات المتاحة:
docker run -it --rm jakzal/phpqa
لتشغيل الأداة المحددة داخل الحاوية، ستحتاج إلى تحميل دليل المشروع على الحاوية باستخدام -v "$(pwd):/project"
. تحب بعض الأدوات الكتابة إلى الدليل /tmp
(مثل PHPStan، أو Behat في بعض الحالات)، لذلك غالبًا ما يكون من المفيد مشاركته بين عمليات تشغيل عامل الإرساء، على سبيل المثال مع -v "$(pwd)/tmp-phpqa:/tmp"
. إذا كنت تريد أن تكون قادرًا على مقاطعة الأداة المحددة إذا استغرقت الكثير من الوقت لإكمالها، فيمكنك استخدام خيار --init
. يرجى الرجوع إلى وثائق تشغيل عامل الإرساء لمزيد من المعلومات.
docker run --init -it --rm -v " $( pwd ) :/project " -v " $( pwd ) /tmp-phpqa:/tmp " -w /project jakzal/phpqa phpstan analyse src
قد ترغب في تعديل هذا الأمر ليناسب احتياجاتك وإنشاء اسم مستعار للراحة:
alias phpqa= ' docker run --init -it --rm -v "$(pwd):/project" -v "$(pwd)/tmp-phpqa:/tmp" -w /project jakzal/phpqa:alpine '
قم بإضافته إلى ~/.bashrc
الخاص بك بحيث يتم تعريفه في كل مرة تبدأ فيها جلسة طرفية جديدة.
الآن أصبح الأمر أسهل كثيرًا:
phpqa phpstan analyse src
git clone https://github.com/jakzal/phpqa.git
cd phpqa
make build-debian
لبناء نسخة جبال الألب:
make build-alpine
يرجى مراجعة كتاب الطبخ لمزيد من النصائح والحيل.
يرجى قراءة دليل المساهمة للتعرف على كيفية المساهمة في هذا المشروع. يرجى ملاحظة أن هذا المشروع تم إصداره مع قواعد سلوك المساهمين. بمشاركتك في هذا المشروع فإنك توافق على الالتزام بشروطه.