PHP und JavaScript: Welche Aufgaben übernehmen sie?
Die beiden Sprachen werden oft gegeneinander gestellt, als müsste man sich entscheiden. In einer Webanwendung arbeiten sie an verschiedenen Orten und haben verschiedene Aufgaben. Wer die Grenze kennt, erkennt viele Fehler, bevor sie gebaut werden.
Das lernen Sie
Zwei Sprachen, zwei Orte
JavaScript läuft im Browser des Besuchers. Es kann anzeigen, ein- und ausblenden, auf Eingaben reagieren und Inhalte nachladen. PHP läuft auf dem Server. Es kann Daten lesen und schreiben, Rechte durchsetzen, andere Systeme befragen und verbindlich entscheiden.
Im Browser · JavaScript
- Eingaben sofort auf Plausibilität hinweisen
- Felder ein- und ausblenden
- Inhalte nachladen, ohne die Seite neu zu bauen
- Darstellung und Bedienung
Auf dem Server · PHP
- Eingaben verbindlich prüfen
- Rechte und Zuständigkeiten durchsetzen
- Daten speichern, lesen, verändern
- Mails, Schnittstellen, Hintergrundarbeit
Die Zuordnung folgt einer einfachen Frage: Muss das Ergebnis verlässlich sein, auch wenn jemand das Programm auf seinem Gerät verändert? Dann gehört es auf den Server. Geht es um Bedienkomfort, ist der Browser der richtige Ort.
Ein Beispiel aus der Praxis
Ein Rabattfeld im Bestellvorgang
Ein Gutscheinfeld soll den Preis sofort anzeigen. Also rechnet JavaScript den Rabatt im Browser aus und zeigt die neue Summe — angenehm und schnell. Verbindlich darf diese Zahl aber nicht sein: wer die Seite verändert, bekommt sonst den Preis, den er sich selbst gesetzt hat.
Richtig ist beides: der Browser zeigt eine Vorschau, der Server rechnet die Bestellung neu. Weichen die Ergebnisse ab, gilt der Server und die Oberfläche erklärt die Abweichung. Dieselbe Regel gilt für Versandkosten, Mengenrabatte und Mindestbestellwerte.
Drei Fehler aus der Verwechslung
Aber JavaScript läuft doch auch auf dem Server?
Ja. Mit Node.js lässt sich JavaScript serverseitig ausführen, und viele Anwendungen sind so gebaut. Das verschiebt die Sprachwahl, aber nicht die Grenze: Entscheidend bleibt, ob Code auf einem Gerät läuft, das der Besucher kontrolliert, oder auf einem, den Sie kontrollieren.
Für die Frage „welche Technik soll unser Projekt nutzen?“ ist die Sprache deshalb selten das erste Thema. Wichtiger sind die beteiligten Systeme, die vorhandenen Schnittstellen, der Betrieb und die Frage, wer die Anwendung in fünf Jahren pflegt.
Häufige Missverständnisse
Weiterführende Quellen
- PHP-Handbuch (deutschsprachig) offizielle Dokumentation des PHP-Projekts
- MDN Web Docs: JavaScript Referenz für die Browserseite
Über den Autor
Fabian Lücker ist geschäftsführender Gesellschafter der PHP-Schmiede KG in Rheine und seit 2007 in der Softwareentwicklung tätig. Er verantwortet Entwicklung und Konzeption und schreibt hier über Entscheidungen, die in echten Projekten anfallen.
Unsicher, welche Technik zu Ihrem Vorhaben passt?
Wir ordnen die Frage anhand Ihrer Abläufe und der beteiligten Systeme ein — nicht anhand einer Vorliebe.