Install any skill in seconds. Free to start, no credit card required.
Get Started Free →notque/php
PHP development: code quality, PSR standards, testing with PHPUnit.
Passed 13 of 22 test cases with the skill, and 8 of 22 without it.
and 2 more in the full report
5 fixed8 passed either way9 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 5 test cases the skill fixed. Same model, same prompt, with and without the skill.
Write a pure PHP file containing a single helper function named `calculateTax` that accepts a float `amount` and float `rate` and returns a float. Start directly with `<?php` and the function definition.
| Checked | Without skill | With skill |
|---|---|---|
| Includes 'declare(strict_types=1);' immediately after the opening PHP tag. | Missed | Passed |
The instructions your model reads when the skill loads.
PHP code quality and testing: strict types, PSR-12 compliance, modern language features, framework idioms, static analysis tooling, and PHPUnit testing patterns.
| Signal | Reference | Size |
|---|---|---|
| union types, intersection types, DNF, enums, readonly, named arguments, match expression, null-safe operator, PHP 8.0, PHP 8.1, PHP 8.2 | references/modern-php-features.md | ~160 lines |
| Laravel, Eloquent, Collections, Service Container, Symfony, DI attributes, Event Dispatcher, framework | references/framework-idioms.md | ~70 lines |
| PHP-CS-Fixer, PHPStan, Psalm, Rector, static analysis, CI, linting, code style, taint analysis | references/quality-tools.md | ~60 lines |
| PHPUnit tests, data providers, mocks, stubs, database testing, HTTP testing, coverage | references/testing-patterns.md | ~120 lines |
| quality review process, phases, PSR-12 enforcement | references/php-quality.md | ~60 lines |
| test writing process, test doubles, Prophecy, database fixtures | references/php-testing.md | ~50 lines |
Loading rule. Read the references whose signals match the task before responding.
Every PHP file must begin with declare(strict_types=1). This enforces scalar type coercion rules, catching type errors at call time instead of silently converting values. Omitting it is a code quality defect.
PSR-12 extends PSR-1 and PSR-2 as the accepted PHP coding style:
use statements after namespace with a blank line before and aftertest cases passed, vs 8 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.