Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Generator konfiguracji PHPStan

Gotowy phpstan.neon: poziom analizy, ścieżki i rozszerzenia

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}
Wybierz poziom analizy i ścieżki, aby wygenerować plik phpstan.neon dla projektu PHP.

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Generator konfiguracji PHPStan

Generator PHPStan tworzy gotowy plik phpstan.neon dla projektu PHP. Wybierasz poziom analizy, ścieżki do sprawdzenia i rozszerzenia, a narzędzie składa poprawny format NEON.

Poziomy analizy PHPStan

PHPStan ma dziesięć poziomów (0-9) rosnącej surowości. Poziom 0 sprawdza nieznan klasy i funkcje, wyższe wymagają pełnych typów, a 9 jest restrykcyjny jak narzędzia dedykowane typom. Zalecana droga: zacznij od poziomu, na którym projekt przechodzi, i podnos go stopniowo.

PoziomCo sprawdza
0-2nieznane klasy, sygnatury metod, liczba argumentów
3-5zwracane typy, typy w pętlach i warunkach
6-8null-safety, typy właściwości, brakujące typy w phpdoc
9ścisłe typy mieszane — dla projektów w pełni typowanych

Rozszerzenia oficjalne

Rozszerzenie phpstan-strict-rules dodaje reguły dyscypliny typów (np. zakaz używania typu mixed bez potrzeby), a deprecation-rules wykrywa wywołania przestarzałych klas i metod. Generator dopisuje wymagane sekcje includes oraz listę pakietów composer do instalacji.

Jak działa generator konfiguracji PHPStan

Generator działa jak kompilator formularza do pliku NEON. Zbierasz trzy decyzje: poziom analizy (liczba całkowita od 0 do 9), listę ścieżek do przeskanowania oraz zestaw rozszerzeń. Na tej podstawie narzędzie buduje sekcję parameters z kluczem level i tablicą paths, a następnie dodaje sekcję includes, jeśli wybrano jakiekolwiek rozszerzenie.

Każde rozszerzenie mapowane jest na dwa elementy: wpis w includes wskazujący plik konfiguracyjny oraz odpowiadający mu pakiet Composer do instalacji. Generator nie zgaduje zawartości projektu — ścieżki i poziom pochodzą wprost z Twoich pól. Wynikiem jest tekstowy plik phpstan.neon, który możesz wkleić do repozytorium i uruchomić komendą vendor/bin/phpstan analyse.

Narzędzie nie wykonuje analizy kodu ani nie sprawdza, czy podane ścieżki istnieją. Pełni rolę składniowego szablonu: pilnuje poprawnego wcięcia, cudzysłowów i kolejności sekcji, dzięki czemu unikasz błędów formatu NEON, które PHPStan zgłasza jako błąd parsowania konfiguracji.

Przykład krok po kroku: poziom 6 z dwoma rozszerzeniami

  1. W polu poziomu wybierasz 6. To o trzy poziomy mniej niż maksimum, bo PHPStan udostępnia poziomy od 0 do 9 — powyżej 6 pozostają jeszcze 7, 8 i 9.
  2. Dodajesz dwie ścieżki: src oraz tests. W sekcji parameters.paths pojawią się dwa wpisy.
  3. Zaznaczasz rozszerzenia phpstan-strict-rules i deprecation-rules. Generator dopisuje dwa wpisy w includes oraz dwie komendy composer require --dev.
  4. Opcjonalnie dodajesz larastan. Wtedy łączna liczba pozycji w includes rośnie do trzech, a lista pakietów Composer do trzech.
  5. Kopiujesz wynik do pliku phpstan.neon w katalogu głównym projektu. Uruchamiasz vendor/bin/phpstan analyse i widzisz błędy dla poziomu 6.
  6. Jeśli błędów jest zbyt wiele, wracasz do generatora, zmieniasz poziom na 5 lub 4 i stopniowo podnosisz próg w kolejnych iteracjach.

Tabela referencyjna elementów konfiguracji

ElementSekcja w phpstan.neonZnaczenie
Poziom analizyparameters.levelLiczba od 0 do 9; im wyższa, tym więcej reguł typowania.
Ścieżkiparameters.pathsLista katalogów lub plików poddawanych analizie.
strict-rulesincludesDodaje reguły dyscypliny typów, w tym kontrolę użycia mixed.
deprecation-rulesincludesWykrywa wywołania przestarzałych klas i metod.
larastanincludesRozpoznaje fasady i Eloquent w projektach Laravel.
ignoreErrorsparametersLista wyjątków od reguł, dopasowywana do komunikatów błędów.
Pakiety Composerpoza plikiem NEONKomendy require --dev dla wybranych rozszerzeń.

Praktyczny poradnik użycia

  • Zacznij od poziomu, który przechodzi. Ustaw taki poziom, przy którym analiza kończy się sukcesem, a dopiero potem podnoś go o jeden krok. Zielony build w CI jest ważniejszy niż ambitny próg z setkami błędów.
  • Ograniczaj ścieżki stopniowo. Najpierw wskaż tylko katalog źródłowy, a testy dodaj później. Zbyt szeroka lista ścieżek na starcie generuje szum i zniechęca do dalszej pracy.
  • Rozszerzenia dodawaj świadomie. strict-rules i deprecation-rules mają sens, gdy zespół akceptuje ich reguły. Włączaj je po ustabilizowaniu podstawowego poziomu.
  • Ignoruj błędy punktowo. W sekcji parameters umieszczaj ignoreErrors z konkretnym wzorcem komunikatu, zamiast wyłączać całą regułę. Dzięki temu nie tracisz kontroli nad resztą kodu.
  • Trzymaj konfigurację w repozytorium. Plik phpstan.neon powinien być wersjonowany razem z kodem, aby każdy członek zespołu i pipeline CI korzystał z tych samych ustawień.

Ograniczenia generatora

  • Nie analizuje kodu. Narzędzie nie sprawdza, czy projekt rzeczywiście przechodzi wybrany poziom ani czy wskazane ścieżki istnieją. Tworzy wyłącznie poprawny składniowo plik NEON.
  • Nie generuje baseline. Nie tworzy pliku z listą wyjątków dla istniejących błędów. Baseline trzeba wygenerować ręcznie komendą PHPStan i samodzielnie dodać do includes.
  • Nie instaluje pakietów. Generator wypisuje komendy composer require, ale nie uruchamia ich za Ciebie. Instalację rozszerzeń wykonujesz w swoim środowisku.
  • Nie zna struktury projektu. Nie rozpoznaje frameworka ani konwencji katalogów. Ścieżki, poziom i rozszerzenia są w całości Twoją decyzją, dlatego wynik wymaga ręcznej weryfikacji przed commitem.

Najczęstsze pytania

Jaki poziom PHPStan wybrać na start?

Dla legacy projektu często startuje się z poziomu 0-2 i podnosi co kilka tygodni. Zielony poziom w CI jest ważniejszy niż ambitny poziom z tysiącem błędów.

Czy PHPStan analizuje Laravel?

Podstawowo tak, a larastan (phpstan-laravel) dodaje rozpoznawanie fasad i Eloquent. Config z generatora jest kompatybilny — wystarczy dodać rozszerzenie do includes.

Jak pominąć wybrane błędy?

W sekcji parameters dodaj ignoreErrors z patternami komunikatów. Lepiej jednak ignorować punktowo, a nie wyłączać całe reguły.

Co daje poziom 9 w PHPStan?

Poziom 9 to najbardziej restrykcyjny próg w skali od 0 do 9. Wymaga ścisłego typowania i jest przeznaczony dla projektów w pełni typowanych, w których zespół akceptuje rygorystyczne reguły dotyczące typu mixed.

Jak zainstalować phpstan-strict-rules?

Dodaj pakiet przez Composer jako zależność deweloperską, a następnie wpisz odpowiedni plik konfiguracyjny w sekcji includes. Generator podpowiada obie czynności, ale instalację wykonujesz samodzielnie w katalogu projektu.

Czy generator obsługuje plik baseline?

Nie. Narzędzie nie tworzy baseline ani nie dodaje go automatycznie do konfiguracji. Jeśli chcesz ignorować istniejące błędy, wygeneruj baseline ręcznie i dopisz go do includes w pliku phpstan.neon.

Jak ustawić wiele ścieżek w phpstan.neon?

Ścieżki trafiają do tablicy parameters.paths jako osobne wpisy. W formularzu podajesz je po jednej, a generator zamienia je na poprawną składnię NEON z zachowaniem wcięć.

Czy poziom 0 w PHPStan ma sens?

Tak, szczególnie w projektach legacy. Poziom 0 sprawdza nieznane klasy i funkcje, więc daje szybki sygnał o brakujących zależnościach. Od niego można stopniowo podnosić próg wraz z porządkowaniem kodu.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!