Symfony

Symfony PHP framework with reusable components. Use for PHP applications.

G1Joshi Updated

File contents

Symfony

Symfony v7.1 (2025) is the bedrock of modern PHP (Drupal, Laravel components). It emphasizes Attributes (Annotations) and strict typing.

When to Use

  • Enterprise PHP: Complex business logic, long-term stability (LTS).
  • Components: Using standalone libraries (Console, HttpFoundation) in other apps.
  • DDD: Well-suited for complex domain modeling.

Core Concepts

Dependency Injection

The Container is central. Auto-wiring is default.

Bundles

Plugin system.

Attributes

#[Route('/api', name: 'api')] replaces YAML/Annotation configs.

Best Practices (2025)

Do:

  • Use Maker Bundle: php bin/console make:controller.
  • Use AssetMapper: No Webpack/Node.js required for simple assets.
  • Use Messenger: For async message bus (queues).

Don't:

  • Don't use YAML for Services: Use PHP attributes and autowiring.

References

G1Joshi/Agent-Skills/tree/main/skills/frameworks/symfony commit d33d36e3ff

Frequently asked questions

npx skillmds@latest add g1joshi/symfony