PHP-Vorstellungsgespräch: Keine Angst, sondern Vorbereitung
\n\nEin Vorstellungsgespräch für die Position eines PHP-Entwicklers ist keine Prüfung nach Karteikarten, sondern ein Dialog. Aber ein Dialog, in dem von Ihnen nicht nur erwartet wird, dass Sie „PHP können“, sondern dass Sie verstehen, wie die Sprache unter der Haube funktioniert. Die Vorbereitung auf ein PHP-Vorstellungsgespräch ist kein Auswendiglernen von Definitionen, sondern die Analyse realer Fälle.
\n\nIn diesem Artikel werden wir nicht hundert Fragen auflisten. Stattdessen zeige ich Ihnen eine Denkschablone: wie Sie auf Fragen antworten, wie Sie Code schreiben und worauf Sie achten sollten, damit der Interviewer „Wow“ sagt. Los geht's.
\n\n1. PHP-Grundlagen: Was Sie unbedingt wissen müssen
\n\nBeginnen wir mit der Basis. Selbst wenn Sie sich auf eine Senior-Stelle bewerben, können Fragen zu den Grundlagen auftauchen. Hier sind die drei Säulen, auf denen ein PHP-Vorstellungsgespräch ruht:
\n\n- \n
- Datentypen und Typumwandlung — wie funktioniert
==vs===, was iststrict_types. \n - Superglobale Arrays —
$_GET,$_POST,$_SERVER,$_SESSION. \n - Arbeit mit Arrays —
array_map,array_filter,array_reduce. \n
Beispielfrage: „Was gibt der Code aus?“.
\n\n<?php\n$a = '5';\n$b = 5;\nvar_dump($a == $b); // bool(true) — nicht strikter Vergleich\nvar_dump($a === $b); // bool(false) — strikter Vergleich\n?>\n\nDenken Sie daran: Ein PHP-Vorstellungsgespräch für Junioren basiert oft genau auf solchen Fallstricken. Tappen Sie nicht hinein.
\n\n2. OOP in PHP: Nicht nur „Klasse und Objekt“
\n\nPHP-Fragen im Vorstellungsgespräch beinhalten immer OOP. Aber anstatt die drei Säulen (Kapselung, Vererbung, Polymorphie) aufzuzählen, zeigen Sie, wie Sie sie anwenden.
\n\nBeispiel: Sie werden nach Schnittstellen und abstrakten Klassen gefragt. Sagen Sie nicht „eine Schnittstelle ist ein Vertrag“. Bringen Sie lieber Code:
\n\n<?php\ninterface PaymentGateway {\n public function pay(float $amount): bool;\n}\n\nclass StripeGateway implements PaymentGateway {\n public function pay(float $amount): bool {\n // Zahlungslogik über Stripe\n return true;\n }\n}\n\nclass PayPalGateway implements PaymentGateway {\n public function pay(float $amount): bool {\n // Zahlungslogik über PayPal\n return true;\n }\n}\n\nfunction processOrder(PaymentGateway $gateway, float $total) {\n if ($gateway->pay($total)) {\n echo "Zahlung erfolgreich";\n }\n}\n?>\n\nEine solche Antwort zeigt, dass Sie das Liskovsche Substitutionsprinzip verstehen und flexible Systeme entwerfen können. Das gibt sofort +100 Karma in einem PHP-Vorstellungsgespräch für Middle-Level.
\n\n3. Arbeit mit Datenbanken: SQL und PDO
\n\nKein PHP-Vorstellungsgespräch kommt ohne Fragen zu MySQL aus. Merken Sie sich: Verwenden Sie niemals mysql_*-Funktionen – sie wurden aus PHP 7 entfernt. Verwenden Sie PDO oder mysqli.
\n\nTypische Aufgabe: „Schreiben Sie eine sichere Datenbankabfrage“.
\n\n<?php\n$pdo = new PDO('mysql:host=localhost;dbname=test', 'user', 'pass');\n$stmt = $pdo->prepare('SELECT * FROM users WHERE email = :email');\n$stmt->execute(['email' => $email]);\n$user = $stmt->fetch(PDO::FETCH_ASSOC);\n?>\n\nWarum ist das wichtig? Weil SQL-Injection ein klassischer Fehler von Junioren ist. Zeigen Sie, dass Sie prepared statements kennen.
\n\nEine weitere häufige Frage sind JOINs. Seien Sie bereit, den Unterschied zwischen INNER, LEFT, RIGHT und FULL JOIN zu erklären. Und geben Sie unbedingt ein Beispiel, wann welcher verwendet wird.
\n\n4. Typische Aufgaben im PHP-Vorstellungsgespräch
\n\nPHP-Aufgaben sind nicht nur Theorie. Sie könnten Live Coding bekommen. Hier sind drei Arten von Aufgaben, die häufig vorkommen:
\n\n4.1. Aufgabe zu Arrays
\n„Schreiben Sie eine Funktion, die ein Array von Objekten nach einem Schlüssel gruppiert.“