Newsletter 365tipů můžete číst zdarma. Placené předplatné je dobrovolná podpora, která pomáhá webu pokračovat.
Podpořit 365tipů

TIP#3326: Co je PHP linter a jak ho dostat do macOS, Windows a Linuxu?

Při práci s PHP se dříve nebo později setkáte s požadavkem na „PHP linter“. Hodí se i pro Codex, Claude Code a další agentní/vibe coding nástroje, které mohou po napsání kódu rovnou ověřit, zda v něm není chyba v syntaxi.

PHP linter není žádný zvláštní program. Je součástí samotného PHP a používá se z příkazové řádky:

php -l soubor.php

Přepínač -l (--syntax-check) podle dokumentace PHP zkontroluje syntaxi, ale kód nespustí. Při úspěchu dostanete například:

No syntax errors detected in soubor.php

Nečekejte od něj ale víc, než umí. Neodhalí chybnou logiku, neexistující funkce, problémy s WordPressem ani nedodržení standardl. Na hlubší kontrolu existují například PHPStan nebo PHP_CodeSniffer.

Pro Codex, Claude Code a podobné nástroje je linter užitečný hlavně proto, že mohou po úpravě PHP rovnou spustit kontrolu. Codex umí spouštět příkazy v pracovním prostředí a totéž platí pro Claude Code. Pokud ale v daném prostředí není dostupný příkaz php, nemají čím PHP syntaxi ověřit.

macOS

Nejjednodušší cesta vede přes Homebrew:

brew install php

A ověření:

php -v

Pokud Homebrew ještě nemáte, viz K čemu je na Mac OS dobrý Homebrew. Jak ho nainstalovat, používat i aktualizovat.

Windows

PHP můžete stáhnout z oficiálních Windows buildů PHP. Pro použití z příkazové řádky stačí x64 Non Thread Safe (NTS) varianta. ZIP rozbalte například do C:\php a adresář přidejte do systémové proměnné PATH, aby fungovalo prosté:

php -v

Podrobnosti jsou v oficiálním návodu pro instalaci PHP ve Windows.

Linux

Záleží na distribuci. V Ubuntu a Debianu pro tento účel stačí CLI varianta:

sudo apt install php-cli

Ubuntu ji přímo uvádí pro spouštění PHP z příkazové řádky. V ostatních distribucích použijte odpovídající PHP/CLI balíček jejich správce balíčků.

Kvůli samotnému linteru nepotřebujete Apache, nginx, MySQL ani lokálně rozběhnutý WordPress. Potřebujete pouze PHP dostupné z příkazové řádky.

A ještě jeden praktický detail: kontrolu provádí ta verze PHP, kterou máte nainstalovanou. Pokud tedy vytváříte kód pro server se starší verzí PHP, je dobré kontrolovat kompatibilitu právě s ní. Úspěšné php -l na novějším PHP ještě neznamená, že stejný kód poběží na výrazně starším serveru.