# Pack `twig-php`

Gilt, wenn: Das PHP-Pack gilt, und die composer.json (oder, bei einer indirekten Anforderung, die composer.lock) verlangt twig/twig oder ein Paket, das Twig mitbringt, etwa symfony/twig-bundle. Die Dateiendung der Templates entscheidet nicht.

## Diagramm

```mermaid
flowchart TD
  subgraph t_guardrails["Guardrails"]
    s_twig_cs_fixer["Twig-CS-Fixer"]
    s_twigstan["TwigStan"]
  end
  x_composer["Composer (php)"]
  x_editorconfig[".editorconfig (generic)"]
  x_phpstan_level_5["PHPStan Level 5 (php)"]
  x_composer --> s_twig_cs_fixer
  x_editorconfig -.-> s_twig_cs_fixer
  x_phpstan_level_5 --> s_twigstan
  s_twig_cs_fixer -.-> s_twigstan
```

Durchgezogener Pfeil: setzt voraus · gestrichelter Pfeil: wartet auf · durchgezogener Rahmen: empfohlen · gestrichelter Rahmen: auf Anfrage · gepunkteter Rahmen: erkannt


## Tools

| Tool | Status | Rollen | Nutzt | Mindest-Runtime | Details |
| --- | --- | --- | --- | --- | --- |
| Twig-CS-Fixer (`twig-cs-fixer`) | recommended | Code Style | Twig-CS-Fixer | – | [packs/twig-php/twig-cs-fixer.md](https://github.com/Art4/continuous-refactoring/blob/0.10.0/skills/continuous-refactoring/references/packs/twig-php/twig-cs-fixer.md) |
| TwigStan (`twigstan`) | recommended | Static Analysis | TwigStan | – | [packs/twig-php/twigstan.md](https://github.com/Art4/continuous-refactoring/blob/0.10.0/skills/continuous-refactoring/references/packs/twig-php/twigstan.md) |

## Stufen

| Stufe | Tool | Track | Setzt voraus | Wartet auf | Gilt, wenn |
| --- | --- | --- | --- | --- | --- |
| Twig-CS-Fixer (`twig-cs-fixer`) | `twig-cs-fixer` | Guardrails | `composer` | `editorconfig` | – |
| TwigStan (`twigstan`) | `twigstan` | Guardrails | `phpstan-level-5` | `twig-cs-fixer` | – |
