Frage von DerAskTyp, 98

PHP und JavaScript UNTERSCHIED und welches sollte man BENUTZEN?

Antwort
von Minilexikon, 50

Kommt darauf an, was du machen willst. Möglicherweise kannst du sogar beide gebrauchen. Wie bereits hier schon an anderer Stelle gesagt, ist eine eine serverseitige, die andere eine clientseitige Scriptsprache. Also kann man die schlecht vergleichen.

Mit PHP erstellst du dynamische Seiten, kannst jedoch keinen (direkten) Einfluss mehr auf die Inhalte nehmen, sobald die Seite einmal geladen ist.

Ab hier greift dann Javascript. Du siehst, die beiden decken größtenteils verschiedene Bereiche ab und arbeiten eher Hand in Hand, als dass sie Konkurrenten sind.

Antwort
von fluffiknuffi, 48

Unterschied:

PHP ist klassenbasiert, JS nicht (bzw. erst ab der neuen Version nach ES6 aber auch dann ist das nur eine Hilfe, kein Muss). JS erlaubt dir alles zur Laufzeit zu tun. Z. B. Objekte Eigenschaften hinzufügen oder Objekte überhaupt zu Erzeugen (in PHP ggf. auch möglich aber gilt nicht als guter Stil). Da es bei JS keine Klassen gibt (gab) funktioniert Vererbung anders (prototypisch). JS macht in Bezug auf Scoping und this einiges anders. 

PHP bringt dir Features nativ mit, die Zugriff auf die Peripherie in einer Serverumgebung (Dateien, ...) erlauben - JS kann das nativ nicht, wie schon gesagt wurde. Um JS serverseitig auszuführen kann man NodeJS verwenden, PHP kann in Browsern clientseitig nicht ausgeführt werden. Möchte der Browser etwas per PHP ausführen, tut er das per AJAX-Aufruf an den Server. JS kann in PHP genutzt werden ( http://php.net/manual/en/book.v8js.php ), ich weiß aber nicht, ob das irgendwer auf der Welt ernsthaft tut. 

Da JS im Browser direkt interpretiert wird, ist das Debuggen direkter als bei PHP, z. B. das Setzen von Haltepunkten etwas ganz natürliches. In PHP erfordert mir das zu viel Aufwand, weshalb ich in PHP anders debugge.

Was ist besser:

Kann man nicht sagen, hängt davon ab, was du wie vor hast. Letztlich kann es aber auch wenn du das recht genau weißt sein, dass es ein Unentschieden gibt. Wenn du serverseitige Entwicklung anstrebst dann will ich dir weder zu PHP noch zu NodeJS raten, wobei PHP möglicherweise das größere & etablierte Ökosystem dafür hat. Damit meine ich nicht Anzahl Packages, sondern ich würde eine große neue Webanwendung, die keine offensichtlichen Vorteile für JS hat (z. B. irgendwas mit Echtzeit...), eher mit PHP angehen weil das für mich die sicherere Nummer wäre. Das führe ich jetzt gar nicht weiter aus weil es in jedem Fall sehr subjektiv ist und wahrscheinlich von kaum einem pauschal zu beurteilen und nur auf Pushen der jeweils bevorzugten Sprache hinausläuft... ja ihr PHP-Hater ihr seid gemeint :D

Antwort
von poldi1405, 51

PHP nimmt man am besten bei Sachen, die vom Nutzer nicht beeinflusst oder gesehen werden soll. JavaScript ist (ohne Framework) clientseitig und von daher manipulierbar und sichtbar. Auch kann man JavaScript blockieren, womit dann die Funktionen einer Seite beschränkt werden können.

Fazit: nimm PHP, wenn du sensible Daten verarbeitet. JavaScript entlastet den Server und erfüllt seinen Zweck ist jedoch offen und nur für öffentliche Daten geeignet.

Kommentar von fluffiknuffi ,

Das ist jetzt Haarspalterei aber ich glaube nicht, dass ein serverseitiges Framework für die bloße serverseitige Ausführung nötig ist. Klar du brauchst eine JS-Engine aber auch wirklich ein Framework für Dateizugriff etc.? (Sinnvoll - sicher, notwendig - das ist die Frage)

Antwort
von medmonk, 68
  1. JavaScript = Client-seitige Scriptsprache
  2. PHP = Server-seitige Scriptsprache

Es kommt also ganz darauf an, was du machen möchtest. Pauschal kann man keine der beiden empfehlen. Daher konkretisiere deine Frage, damit wir sinnvoll darauf antworten können. 

Kommentar von RedKungFuMastr ,

Mit NodeJS ist Javascript auch serverseitig ;P

Kommentar von medmonk ,

Hier wurde nicht nach JS-Frameworks gefragt, daher bin ich lediglich auf die oben stehende Frage eingegangen. Ansonsten Node.js oder die JS Engine Rhino mit aufgeführt hätte. Mit Ajax im Prinzip das selbe. 

Keine passende Antwort gefunden?

Fragen Sie die Community