Dodawanie wielu standardów kodowania za pomocą Composer
Ręczne używanie PHP CodeSniffer to jedno, ale jeśli używasz narzędzia takiego jak GrumPHP do sprawdzania swojej pracy przed przekazaniem jej do repozytorium, prawdopodobnie będziesz chciał użyć wersji, którą instalujesz z projekt.
Zakłada się, że:
- Instalujesz PHP CodeSniffer lokalnie w swoim projekcie,
- Chcesz zainstalować określony zestaw standardów kodowania, który będzie działał w Twoim kodzie.
Pamiętaj, że jest to również robione w kontekście chęci uruchamiania automatycznych skryptów podczas procesu zatwierdzania oraz w środowisku lokalnym (w przeciwieństwie do ustawień globalnych) za pomocą Composera.
Composer oferuje możliwość pisania skryptów podczas wykonywania. Z instrukcji :
Skrypt, w terminologii Composera, może być wywołaniem zwrotnym PHP (zdefiniowanym jako metoda statyczna) lub dowolnym poleceniem wykonywalnym z wiersza poleceń. Skrypty są przydatne do wykonywania niestandardowego kodu pakietu lub poleceń specyficznych dla pakietu podczas procesu wykonywania programu Composer.
Aby zainstalować wiele standardów kodowania za pomocą Composera, abyśmy mogli robić to, co my z GrumPHP i dowolnym procesem wstępnego zatwierdzania, musimy skorzystać ze skryptów pre-install-cmd i pre-update-cmd. W ten sposób zapewnisz, że odpowiednie standardy kodowania zostaną ustawione dla pliku binarnego PHP CodeSniffer na poziomie projektu.
Przykład :
"scripts": {
"post-install-cmd": [
""vendor/bin/phpcs" --config-set installed_paths /Users/tommcfarlin/Sync/Projects/wpcs/WordPress"
],
"post-update-cmd": [
""vendor/bin/phpcs" --config-set installed_paths /Users/tommcfarlin/Sync/Projects/wpcs/WordPress"
],
},
Zauważ, że w powyższym przykładzie upewniam się, że dodam standardy kodowania WordPress do PHP CodeSniffer.
Ale możesz dodać wiele wersji standardów kodowania, na przykład:
"scripts": {
"post-install-cmd": [
""vendor/bin/phpcs" --config-set installed_paths /Users/tommcfarlin/Sync/Projects/wpcs/WordPress-Core,/Users/tommcfarlin/Sync/Projects/wpcs/WordPress-VIP"
],
"post-update-cmd": [
""vendor/bin/phpcs" --config-set installed_paths /Users/tommcfarlin/Sync/Projects/wpcs/WordPress-Core,/Users/tommcfarlin/Sync/Projects/wpcs/WordPress-VIP"
],
},
Możesz też dodać dowolne inne standardy, które pozwalają na skierowanie skryptu we właściwe miejsce, w którym są zainstalowane.
Gdy to zrobisz, standardy zostaną zastosowane do PHP CodeSniffer i będą wykonywane zarówno podczas instalacji, jak i aktualizacji Composera.
