Agent skill
php-coding-standards
Provides PHP coding standards for Nette projects. Use when formatting PHP code, naming conventions, or code style questions.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/php-coding-standards-nette-claude-code
SKILL.md
PHP Coding Standards
Using nette/coding-standard
Install globally using the /install-nette-cs command.
After installation, PHP files are automatically checked when edited. Do not run ecs manually.
General Rules
- Every PHP file must include
declare(strict_types=1) - Use two empty lines between methods for better readability
- Document shut-up operator use:
@mkdir($dir); // @ - directory may already exist - Document weak comparison operators:
// == accept null - Multiple exceptions can be written in a single
exceptions.phpfile - Interface methods don't need visibility as they're always public
- All properties, return values, and parameters must have types
- Final constants don't need types as they're self-evident
- Use single quotes for strings unless containing apostrophes
- Write all code, comments, variables etc. in English only! (even if you communicate with me in chat in Czech)
Naming Conventions
- Avoid abbreviations unless full name is too long
- Use UPPERCASE for two-letter abbreviations, PascalCase/camelCase for longer ones
- Use nouns or noun phrases for class names
- Class names should include both specificity and generality (e.g.,
ArrayIterator) - Use PascalCaps for class constants and enums
- Never use prefixes/suffixes like
Abstract,Interface, orIfor interfaces/abstract classes - PascalCase for classes, camelCase for methods/properties
Formatting
- Use TABS for indentation (Everywhere! V PHP, JS, HTML, CSS/SCSS, NEON, ...)
- Prefer to use single quotes (except for HTML)
- PHP follows Nette Coding Standard (based on PSR-12) with these modifications:
- No space before parentheses in arrow functions:
fn($a) => $b - No blank lines required between different
useimport types - Return type and opening brace on separate lines:
- No space before parentheses in arrow functions:
php
public function example(
string $param,
array $options,
):
// method body
}
Other rules
- Use try/catch for external operations
- Prefer modern PHP syntax and concise expressions
- Example: Use
if (is_array($response['data'] ?? null))instead ofif (isset($response['data']) && is_array($response['data']))
- Example: Use
- Uses DOM API with HTML5 parser Lexbor
Didn't find tool you were looking for?