Şu anda Magento 2 kodlama standart kontrol projesi üzerinde çalışıyorum.
Magento 2 ve PHP kodlama durumunu kontrol etmek için PHP_CodeSniffer dışında başka bir araç var mı?
Şu anda Magento 2 kodlama standart kontrol projesi üzerinde çalışıyorum.
Magento 2 ve PHP kodlama durumunu kontrol etmek için PHP_CodeSniffer dışında başka bir araç var mı?
Yanıtlar:
Magento 2, ECGM2 kodlama standardını kullanır
Buradan indirebilirsiniz
EKG Magento Kod Sniffer Kodlama Standardı, PHP_CodeSniffer aracı için bir dizi kural ve burnudur .
Kodunuzu aşağıdaki gibi yaygın Magento ve PHP kodlama sorunlarına karşı otomatik olarak kontrol etmenizi sağlar:
Ve bircok digerleri.
Hem Magento hem de Magento 2 desteklenmektedir.
Magento 2, ECGM2 kodlama standardını kullanır:
Kodlama Standardını yükleyin:
cd to/your/magento/install/directory
composer create-project --repository=https://repo.magento.com magento/marketplace-eqp magento-coding-standard
composer require magento/marketplace-eqp
cd magento-coding-standard
Hata alırsanız:
PHP Önemli hata: Yakalanmayan PHP_CodeSniffer_Exception: Başvurulan sniff "MEQP1.Exceptions.Namespace" mevcut değil
vendor/bin/phpcs --config-set installed_paths ../../..
vendor/bin/phpcs --config-set m2-path <path-to-magento2> ( for eg. sudo vendor/bin/phpcs --config-set m2-path /var/www/html/magento2 )
M2 uzantınızı test edin:
Hataları otomatik olarak düzeltmek için phpcbf'yi kullanın:
vendor/bin/phpcbf <path-to-magento2>/app/code/Vendor/Module/Block/ --standard=MEQP2 --no-patch --extensions=php,phtml,xml,css,js
Görüntüleme Dosyası İçin
vendor/bin/phpcbf <path-to-magento2>/app/code/Vendor/Module/view/frontend/templates --standard=MEQP2 --extensions=php,phtml
Hata / Uyarıları Kontrol Etmek İçin:
vendor/bin/phpcs <path-to-magento2>/app/code/Vendor/Module/Block/ --standard=MEQP2 --extensions=phtml,xml,css,js,php
Görüntüleme Dosyası İçin
vendor/bin/phpcbf <path-to-magento2>/app/code/Vendor/Module/view/frontend/templates --standard=MEQP2 --extensions=php,phtml
Burada bulunan bazı uyarılar için çözüm:
Pazar Teknik İnceleme:
vendor/bin/phpcs /path/to/your/extension --standard=MEQP2 --severity=10
Magento 2 uzantısını doğrulayın:
Https://gist.github.com/alankent/fcf280dd9c599921b71d#file-validate_m2_package_v2-php adresinden "validate_m2_package.php" dosyasını indirin ve macenta kökü üzerine yerleştirin:
cd <path-to-magento2>
php validate_m2_package.php Vendor_Module.zip
composer require magento/marketplace-eqp
bunu düzeltin composer config repositories.magento-eqp git https://github.com/magento/marketplace-eqp
. github.com/magento/marketplace-eqp/issues/2
Prens Patels cevabına ek olarak ...
Magento 2 ayrıca PSR-2 kodlama standardını kullanır , böylece çalıştırabilirsiniz phpcs --standard=PSR2 /path/to/module
. PSR-2 "hatalarını" düzeltmek için " PHP Code Beautifier and Fixer (phpcbf) " kullanabilirsiniz.
Benim için bu çok iyi çalışıyor ...
Komutlar:
phpcbf --standard=PSR2 ./app/
phpcs --report-gitblame=CS-blame --report-source=CS-code --report-full=CS-full ./app/
cat CS-* >> ECG-PSR2 ; rm CS-*
Eğer kullanırsanız git
, bir ekleyebilir pre-commit
kanca pistine phpcs
/ phpcbf
değişikliklerinizi otomatik olarak uygulanıyor önce.
Güncelleme:
Özellikle magento kodlama standartları için değil, ama iyi uygulama imho ...
phpcbf
ile PSR2
ve MEQP2
standartphpcs -s
her iki standartta da koşphpmd -s
phpstan -l 7
0.8.5
-s
seçeneği koklama adını göstermektir ... uyarıları bastırmak istiyorsanız ful kullanın
Güzel raporlar için phpdox öneririm . Bu verileri toplar ...
phploc
phpcs
phpmd
phpunit
kod kapsamıÖrnek (kod kapsamı olmadan): http://phpdox.de/demo/PHPUnit/index.xhtml
Diğer Aletler: