 
         
        Twig ist ein leistungsfähiges und flexibles Templating-System für PHP, das häufig in Symfony, aber auch in anderen PHP-Projekten verwendet wird. Es ermöglicht eine klare Trennung von Logik und Präsentation und bietet viele nützliche Features für die Frontend-Entwicklung.
{{ }})Twig verwendet doppelte geschweifte Klammern für die Ausgabe von Variablen:
<p>Hallo, {{ name }}!</p>→ Wenn name = "Max" ist, wird ausgegeben:
"Hallo, Max!"
{% %})Twig unterstützt if-else, Schleifen und andere Kontrollstrukturen:
{% if user.isAdmin %}
    <p>Willkommen, Admin!</p>
{% else %}
    <p>Willkommen, Nutzer!</p>
{% endif %}Schleifen (for)
<ul>
{% for user in users %}
    <li>{{ user.name }}</li>
{% endfor %}
</ul>Twig unterstützt das Konzept von "Base-Layouts", ähnlich wie Blade in Laravel.
base.html.twig)<!DOCTYPE html>
<html>
<head>
    <title>{% block title %}Meine Seite{% endblock %}</title>
</head>
<body>
    <header>{% block header %}Standard-Header{% endblock %}</header>
    <main>{% block content %}{% endblock %}</main>
</body>
</html>Kind-Template (page.html.twig)
{% extends 'base.html.twig' %}
{% block title %}Startseite{% endblock %}
{% block content %}
    <p>Willkommen auf meiner Seite!</p>
{% endblock %}→ Die Blöcke überschreiben die Standardinhalte des Basis-Templates.
Man kann wiederverwendbare Teile wie Header oder Footer einbinden:
{% include 'partials/navbar.html.twig' %}Twig enthält viele Filter, um Inhalte zu formatieren:
| Filter | Beispiel | Ausgabe | 
|---|---|---|
| upper | `{{ "text" | upper }}` | 
| lower | `{{ "TEXT" | lower }}` | 
| length | `{{ "Hallo" | length }}` | 
| date | `{{ "now" | date("d.m.Y") }}` | 
Twig escapet HTML automatisch, um XSS-Angriffe zu verhindern:
{{ "<script>alert('XSS');</script>" }}→ Gibt nur <script>alert('XSS');</script> aus.
Möchtest du HTML ungefiltert ausgeben, nutze |raw:
{{ "<strong>Fett</strong>"|raw }}SonarQube ist ein Open-Source-Tool zur kontinuierlichen Analyse und Qualitätssicherung von Quellcode. Es hilft Entwicklern und Teams, die Codequalität zu bewerten, Schwachstellen zu identifizieren und Best Practices in der Softwareentwicklung zu fördern.
Codequalität prüfen:
Sicherheitslücken aufdecken:
Technische Schulden bewerten:
Unterstützung für viele Programmiersprachen:
Berichte und Dashboards:
SonarQube ist in einer kostenlosen Community-Edition und in kommerziellen Versionen mit erweiterten Funktionen verfügbar (z. B. für größere Teams oder spezielle Sicherheitsanalysen).
Exakat ist ein statisches Analyse-Tool für PHP, das speziell entwickelt wurde, um die Codequalität zu verbessern und Best Practices in PHP-Projekten sicherzustellen. Ähnlich wie Psalm konzentriert es sich auf die Analyse von PHP-Code, bietet jedoch einige einzigartige Funktionen und Analysen, um Entwicklern zu helfen, Fehler zu erkennen und ihre Anwendungen effizienter und sicherer zu machen.
Hier sind einige der Hauptfunktionen von Exakat:
Exakat kann als eigenständiges Tool oder in eine Continuous Integration (CI)-Pipeline integriert werden, um sicherzustellen, dass Code kontinuierlich auf Qualität und Sicherheit überprüft wird. Es ist ein vielseitiges Werkzeug für PHP-Entwickler, die ihren Code verbessern und auf einem hohen Standard halten möchten.