Kann man PHP auch ohne Webserver nutzen?

11 Antworten

Ja ist es. Du kannst z.B. in Eclipse PDT einfach die Scripte ausführen. Die Ausgabe wird dann in einer Konsole angezeigt. Ansonsten benutze einfach die php.exe in einer Konsole. Die meisten größeren IDEs haben PHP-Debugger dabei.

http://projects.eclipse.org/projects/tools.pdt

Es reicht ein FTP-Server um eine Webseite zu hosten. Du musst nur die .htaccess abändern und *.php hinzufügen, sodass die PHP-Seite als Index-Seite angezeigt wird.

Ich gehe bei der Frage davon aus, dass er kein Webspace hat.

1

Hat es einen bestimten Grund warum du mit PHP anfangen möchtest? PHP ist eine relativ alte Sprache die ihren Höhepunkt hinter sich hat um es mal krass zu formulieren. Momentan gibt es recht viele neue Webtechnologien die sich mit PHP nicht stabil und produktiv nutzen lassen, zB Websockets, Streamings, etc...

Ich würde dir daher empfehlen sich nicht mit PHP sondern mit serverseitges Javascript auseinanderzusetzen. Kann das gleiche wie PHP und noch vieles mehr, zB die oben genannten Punkte.

Du bist wohl bei PHP 4 hängengeblieben und hast einiges seit PHP 5 verpasst.

3
@Babelfish

Zwischen 4 und 5 hat sich jetzt nichts revolutionäres in PHP geändert.... bissl OOP, mysqli, pdo, namespaces sind nichts spektakuläres... aber ich hab grad nochmal nachgeschaut, bin bei 5.5 also dem akutellen Release, wie gesagt - PHP ist insgesamt outdated da es vieles nicht kann. Serverseitges JS ist der neue Stern am Skripthimmel^^

0
@elgreeco

Na dann, träum’ weiter mit deinem Stern. Ein großer Teil der restlichen Webentwickler nutzt weiter PHP und kann damit genauso viel oder mehr als du. Schließlich sind solche „Kleinigkeit“ wie MySQli, PDO oder (echte) Namespaces ja für Javascript-Entwickler noch ein Wunschtraum, von bspw. Trails will ich da gar nicht erst anfangen.

1
@Babelfish

Oder Closures und Multithreading. Projekte wie Quercus oder HipHop. :-) Late static bindings... Noch weiteren Magics.

1
@Babelfish

Ein ganz großer Teil der PHP'ler springt immer mehr auf Node auf :p

Serverseitiges JS kann mit MySQL umgehen, Closures bringt JS schon direkt mit, ähnliches wie PDO gibt es auch, Namespaces kann man per Module definieren ... alles kein Problem.

PHP kann kein Multithreading, - zumindest nicht für den User, und HipHop verwendet ausser Facebook niemand. Also schwache Fakten.

Außerdem geh ich auch nicht von Sprachkonzepten wie OOP vs Prototype aus, das sind Details, sondern von fundementalen Funktionen die die Sprache mitbringt.

Zeig mal zB wie du in PHP ein Realtime Chat mit Websockets baust der 1000 Clients gleichzeitig verbindet über eine persistente Connection. In Node.js hast du das in 5 Minuten fertig. In PHP wirst du hier nicht weit kommen. Nur so als Beispiel. Könnte tausende Dinge aufzählen welche so langsam zum Standard werden und die man in PHP nicht machen kann. :-p

0
@elgreeco

PHP kann kein Multithreading

Man sollte schon Ahnung haben, von was man redet. Natürlich kann PHP Multi-Threading. Im Apache und im CLI. Funktioniert alles wunderbar. Und nein, keine Tricks mit mehreren Prozessen, sondern echtes Multithreading per pthreads.

und HipHop verwendet ausser Facebook niemand

Da bist du leider schief gewickelt. Ich kenne alleine im Karlsruher Raum 3 mittelständige Firmen, die HipHop regelmäßig einsetzen, also durchaus seriöse und keine 2-Mann-Experimental-Klitchen.

In PHP wirst du hier nicht weit kommen

Ich kann dir das in Quercus in rund 10 Minuten zusammenzimmern. Gut, dauert 5 Minuten länger aber gehen tut das problemlos.

Bevor man etwas anhand von Buzzwordz schlecht macht, sollte man Ahnung haben, wovon man schreibt und nicht irgendwelche Modetrends mitmachen. Es gibt tausende Modetrends, die manchmal dauerhaft bleiben, manchmal nur Randgruppendasein haben und manchmal schneller verschwinden als sie gekommen sind. Und was sagt das über die Architektur aus? In vielen Fällen exakt gar nichts.

Deine Aussage war: PHP ist rundum schlecht. Hat sich ewig nicht verändert. Auf den Gedanken, dass Änderung nur um der Änderung willen nicht automatisch gut ist und dass Stabilität oftmals auch positiv ist, kommst du nicht.

Es gibt niemals ein gut oder schlecht. Es gibt immer nur ein "geeignet" oder "ungeeignet". Es gibt ein "passend" oder "unpassend". Und die Unterscheidung ´zwischen diesen liegt A) immer am Ziel bzw. am Softwareprojekt und B) am eigenen Kenntnisstand. Du zeigst ja eindrucksvoll, dass dein Kenntnisstand eher von Buzzwordz geprägt ist.

Ich persönlich beherrsche gleich eine Reihe von Sprachen und eine Reihe von Systemen und Bibliotheken, gerade im Serverbereich. Mache seit Jahrzehnten auch nichts anderes. Und weisst du was? Ich lerne täglich dazu. Ich für meinen Teil wage es nicht, alleine aus zwei Buzzwordz ein gut oder schlecht abzuleiten. Das unterscheidet wohl einen Profi wie mich von einem Laien oder Hobby-Entwickler wie dir. Das meine ich nicht irgendwie kränkend, ich weiss, dass ich mal als kleiner Bub und Unwissender angefangen hab. Aber vielleicht nimmst du dir das zu Herzen und urteilst das nächste mal mit etwas mehr Substanz.

4
@mepeisen

Ja, PHP kann man mit hacks und tweaks irgendwie immer zu etwas bringen zu dem es eigtl nie vorgesehen war. Da hast du recht :-p

Trotzdem: Wieso sollte man mit einem alten Schinken wie PHP heute programmieren lernen wenn es Node.JS gibt? Das kann alles was PHP kann und vieles mehr ohne irgendwelches rumgehacke. Darum ging es ja , und wer das als Modeerscheinung sieht der sollte besser in Programmierer Rente gehen. :-p

Wohl nich nie auf Github gewesen du "oberpro"

1
@mepeisen

Danke, dem ist nichts hinzuzufügen und wer es jetzt noch nicht verstanden hat, der will es auch nicht.

1
@elgreeco

PHP entstand 1995. Javascript ebenso. Javascript war ausschließlich für Erweiterungen im Browser gedacht. Insofern ist nach deiner Logik JavaScript ein alter Schinken, der ins Museum gehört und der mittels "Hacks" wie beispielsweise Node.JS zu Sachen pervertiert wird, für die es nie gedacht war. Ajax, was du vielleicht als Sternstunde bezeichnen würdest, ist auch nichts weiter als wildes "Hacking", wenn ich deine Logik anwende.

Was hat all das mit der Programmiersprache Javascript zu tun? Gar nüscht. Macht das Javascript schlechter oder besser? Ne.

Aber was solls. Wie war das mit Perlen und Säuen?

Im übrigen habe ich selbst knapp 10 aktive Projekte auf Github, verdiene seit rund 3 Jahrzehnten richtig gutes Geld mit dem, was ich mache und habe ansonsten aber (das gebe ich zu) keine Ahnung, was nun an Guthub Pro oder Contra PHP spricht. Es kommt nicht auf Quantität an und auf Buzzwords, sondern auf Qualität und Nachhaltigkeit. Das hast du nur immer noch nicht verstanden. Ich lass dich mal in deiner Traumwelt allein, hab leider besseres zu tun. Aber war spassig. Vielleicht schaue ich nochmal rein, aber nur, wenn es hier am Themen-Eingang Popcorn zu kaufen gibt ;-)

3
@mepeisen

Um ein "Hello World" auf dem Screen anzuzeigen reicht auch PHP aus...

Also ich habe grade eine PHP Symfony2 "web 3.0" App mit 500.000 Zeilen Code auf Node.JS + Express portiert. Das hätte ich sicher nicht getan wenn Node.JS schlechter als PHP wäre.

Das du von JS / Node keine Ahnung hast, hast du jetzt mehrfach bewiesen. Ich könnte jetzt genauso gut mit einem blinden über Farben diskutieren. Würde genauso viel Sinn machen also viel spaß in deiner klicki bunti PHP "web 1.0" Traumwelt. Wie deine Apps aussehen kann ich mir schon vorstellen, lol!

0
@elgreeco

Also ich habe grade eine PHP Symfony2 "web 3.0" App mit 500.000 Zeilen Code auf Node.JS + Express portiert.

Wundere dich bitte nicht darüber, dass dich keiner mehr ernst nimmt.

2
@elgreeco

Das hätte ich sicher nicht getan wenn Node.JS schlechter als PHP wäre.

Und das ist der Punkt, den du immer noch nicht kapiert hast. Ich habe nie behauptet, dass Node.JS schlechter ist. Ich habe nur gesagt: Wenn du recht hättest mit PHP, dann gilt das exakt auch so für Javascript. Mehr nicht. Wenn PHP schlecht ist, weil es alt ist, dann ist Javascript auch schlecht, weil es genauso alt ist. Merkst du nicht, wie bekloppt dieses Argument ist?

Du merkst nicht, dass du in deiner eigenen Traumwelt gefangen bist und dir was vor machst. Du merkst nicht, dass eine gute Anwendung wenig mit der Programmiersprache zu tun hat. Du merkst nicht, dass gute Programme völlig andere Qualitäten haben. Wartbarkeit, Dokumentation, Stabilität, Usability. Was zum Beispiel hat PHP mit Usability zu tun oder das Serverseitige Javascript? Wenn man Webseiten damit baut? Exakt nichts. Wirklich exakt nichts. Alles, was du mit Node.JS auf dem Server baust, kannst du exakt so mit PHP, mit Java, mit C#/C++, meinetwegen Perl oder Python umsetzen. Es ist anders, es gibt Stärken und Schwächen, aber gut oder schlecht, das sind Kategorien, die einfach nicht gelten.

Du darfst ruhig von Javascript schwärmen. Es hat in manchen Dingen auch seinen Reiz. Aber zu behaupten, dass alles andere automatisch schlecht ist, weil es alt ist, das hat mit Software-Entwicklung nichts zu tun. Das sind irgendwelche leeren Sprüche von Menschen, die meinen, sich über irgendetwas erheben zu müssen. Ich gebe zu, dass ich nicht alles weiß, ich gebe zu, dass es genug Entwickler gibt, die in Teilbereichen besser sind als ich. Die wird es immer geben. Ich programmiere seit Jahren aufwändige RIAs, weiß also auch in Bezug zu Javascript sehr wohl, wovon ich rede. Ich habe Javascript in einigen Punkten durchaus zu schätzen gelernt. Ist es deswegen besser als anderes? Nein, es ist anders. Das wars aber auch schon.

So das war nun der letzte Versuch. Wenn du es immer noch nicht verstehst, dann lass ich es sein. Dann ist dir einfach nicht mehr zu helfen. Viel Spass bei der Jobsuche...

3
@mepeisen

Hallo mepeisen,

er hat aber doch recht. Natürlich wird es einige Zeit dauern, bis NodeJS sich vollständig etabliert hat. Ob PHP nun gut oder schlecht ist hat damit aber herzlich wenig zu tun. Der gravierende Vorteil ist ganz einfach die Möglichkeit portabel zu sein.

Es ist ohne Probleme möglich "remote" oder "local" zu tauschen. Ob du nun eine Funktion auf dem Server vom Client ausführst oder andersherum macht keinen Unterschied. Du musst nicht konvertieren. Teile können dynamisch getauscht werden. PHP hat im Bereich der Client/Server-Kommunikation einfach den Nachteil, dass permanent zwischen zwei Welten konvertiert werden muss. Da JS auch im Browser läuft entfällt dieses Problem. Hinzu kommt der Vorteil, dass ggf. vom Client nicht unterstützte Funktionen einfach auf dem Server ausgeführt werden.

Ich habe beruflich inzwischen einige Projekte in Richtung NodeJS getrieben. Die Behauptung, dass NodeJS ein Buzzword ist, ist einfach nicht haltbar. Du kannst nicht von deinem Kreis auf alle schließen. Ich würde auch nicht behaupten, dass PHP ausgestorben ist, weil ich die Nutzung abnehmen sehe. PHP hat einige Probleme und das kann niemand bestreiten. Die liegen einfach in dem Konflikt zwischen "einfach sein" und "Funktionsvielfalt anbieten". PHP 6 wird einiges bereinigen und glücklicherweise ist nicht zu erwarten, dass die Umstellung von 5 zu 6 ähnlich lange dauern wird wie von 4 zu 5.

PHP kann aber durchaus auch einige nette Sachen. Ich war mit dem Problem konfrontiert eine Code-Basis mit 2000 Dateien weiter zu entwickeln. Leider hat der Programmierer die Firma verlassen und noch nie etwas von OOP gehört. Trotz allem wurden hier und da Klassen genutzt, dann mal nicht. APIs wie FB wurden auch genutzt und so nette Sachen wie "throw..." einfach mal auskommentiert, da es wohl nicht verstanden wurde. Es wäre Unsinn die Entwicklung einzufrieren und alles neu zu machen. Es ist aber kein Problem für alles einen Inceptor zu bauen. Jede Zuweisung und jeder Aufruf kann umgeleitet werden. Dateien können dynamisch umgeschrieben werden usw. Ohne viel Reflection oder sonst etwas. So konnten fehlerhafte Parts automatisch korrigiert werden. Natürlich nutzt wohl kaum jemand diese Möglichkeiten. Auch schade, dass das Projekt für die Operator-Überladung wohl tot ist. PHP wird auf jeden Fall weiter genutzt, aber für viele neue Programmierer macht Javascript doch mehr Sinn, da es einiges vereinfacht, wenn auch noch viel "Know-How" entstehen muss, da die praktische Erfahrung noch fehlt...

2
@Sasatux

Aber deshalb hat er doch nicht recht! Schließlich war ja die zentrale Behauptung, dass PHP schlecht ist, weil es alt ist und das ist Unsinn. Weder ich noch mepeisen haben hier irgendwo behauptet, dass Node.js oder Javascript schlecht sind. Ich finde das Konzept von Node.js auch spannend und habe auch schon gearbeitet aber das hängt halt immer von den Anforderungen des Projekts und dem Umfeld ab. Es gibt viele Fälle, wo es nicht oder kaum notwendig ist, Code zwischen Client und Server wiederzuverwenden, wo es aber bspw. wichtig ist, eine absolut stabile und lastfähige Datenbankverbindung zu haben. Es gibt ’zig andere Beispiele, wo PHP besser geeignet ist und es gibt auch Beispiele, wo Node.js besser ist. Hier PHP aber ohne Sinn und Verstand einfach zu verteufeln und mit haltlosen Argumenten zu kommen, ist einfach nur daneben.

1
@Sasatux

Portabilität ist durchaus ein Punkt, den er bisher allerdings nicht genannt hat. Aber das liegt nicht an der Sprache selbst. Das muss man auch einmal klar stellen. In der Praxis kommt das aber selten in dem Maße zum Einsatz, wie du es beschreibst. Es ist aus akademischer Sicht sicherlich spannend, Code-Teile beliebig zwischen Client und Server austauschen zu können. Eins zu Eins Austausch ist auch mit Node.JS nur bedingt möglich oder gar nicht. Zumindest minimale Anpassungen wird es stets geben.

Aber wenn du auch sagst, dass ich richtig lesen soll, dann lies du auch bitte richtig. Ich habe nicht gesagt, dass Node.JS selbst ein Buzzword ist (da ist bei Projekten auch schwer möglich). Ich habe gesagt, dass das, was er so anführt, weitestgehend Buzzwords sind. Er schlägt mit Wörtern um sich ohne sich um die Hintergründe Gedanken zu machen oder zu erkennen, dass eine gute Anwendungsstruktur das ist, worauf es ankommt. Bisschen da und da und sowieso alles nur Rumgefrickel bei PHP, deswegen alles schlecht. Das sind seine Argumente.

Dass PHP einige Probleme hat, weil es stets abwärts kompatibel sein will, so eins zwei Unschönheiten immer noch mit sich herumschleift, das ist tatsächlich so. Deswegen ist es aber nicht automatisch schlecht. Die Probleme betreffen in der Praxis kaum jemanden. Das Problem ist eher, dass man PHP stets auf Apache und dessen Grundstruktur reduziert. Ein Beispiel könnt ich sogar nennen, das ist der interne Speicherverbrauch, weshalb langlebige CLI-Anwendungen/Server-Anwendungen mit einer reinen PHP-Lösung auf der Zend-Engine kaum stabil laufen sind. So ein Argument kommt von ihm einfach nicht und ich behaupte weiterhin, dass er einfach von der Materie keine Ahnung hat, sondern einem Modetrend hinterherschwimmt und lieber flamen will, statt ernsthaft zu diskutieren. Mit den Behauptungen, PHP wäre einfach gegenüber dem brandneuen Javascript viel zu alt zeigt er seine Ahnungslosigkeit auch eindrucksvoll. Dafür gibt es aber Alternativen, die ich schon genannt habe und ohne dass man die Programmiersprache wechselt. Man kann wechseln, wenn man etwas anderes für geeigneter hält und sich bewusst ist, dass es auch Nachteile gibt, man muss aber nicht.

Deswegen wirklich von schlecht zu reden in Bezug auf PHP ergibt keinen Sinn. Das ist genauso, als würde man alle Unis als schlecht betiteln und dafür einen bestimmten Prof als Beispiel anführen und bei allen anderen Profs stets sagen "Die zählen aber gar nicht, es geht um diesen Prof, den ich da gemeint habe."

Du hast ein gutes Beispiel gebracht mit deinem Projekt, das schlecht ist. Aber warum ist es schlecht? Wegen PHP? Nein, weil der Programmierer, soweit man dem mal folgt, unstrukturiert war. Weil er herumgesaut hat. Weil er von vielen Dingen nichts gehört hat, sie nicht angewandt hat oder gar aus den zusammengeschusterten und aus dem Internet zusammengeklauten Code-Fragmenten Dinge, die er nicht verstanden hat, einfach auskommentiert hat, dabei den Programmfluss stört. Wieso fällt das aber auf PHP zurück? Ich kanns dir sagen, aber das Argument wird in Bezug auf Node.JS niemandem gefallen: Weil PHP zu schnell gewachsen ist. Weil abertausende 14jähriger Script-Kiddies die großen Entwickler spielen wollten und weil es cool war. Wirklich professionelle Entwicklung und professionelle Projekte mit sauberer Dokumentation fand man bei all den vielen "Frickel-Scripten" einfach kaum noch. Sie gingen in der Masse unter. Das ändert sich nur teilweise. Das Problem ist: Wenn genau das auch mit Node.JS passiert und gerade auch Javascript kann zu solchen Frickelein genauso verleiten, wird man die selben Kinderkrankheiten haben, an denen PHP teilweise auch heute noch leidet. Mit der Sprache selbst hat das eigentlich nichts zu tun.

Wieso hat man das Phänomen bei Java nicht? Die Hürde, damit als Neuling einzusteigen ist höher. Deswegen ist die Entwicklergemeinde im Frickel-Bereich sehr überschaubar. Das ist der einzige Grund.

Wie lange dauerte es, bis sich im Browser-Bereich wirklich vernünftige Bibliotheken etablierten? JQuery entstand wann? 2005 oder 2006 wenn ich mich entsinne. Seit wann hat sich ExtJS durchgesetzt? So könnt man weiter machen.

1

https://www.youtube.com/watch?v=GfRjyN7lEfE schau dir den Link an bzw. die Reihe und erzähle das nochmal das keiner...

das Problem an JAVA-Script ist, das jeder den Code einsehen kann im Gegensatz zu PHP, wie willst du in Java-Scrpit dann eine Passwort-Abfrage machen...natürlich ist das eines der wichtigsten Sachen die PHP kann

aber auch zum einsteigen ist es Super (meiner Meinung nach weil es dir Sachen wie Variablentypen noch abnimmt, wer dann professionell werden will kann immer noch JAVA lernen(was meiner Meinung nach kein Problem ist))

0

Wenn XAMPP nicht geht dann wird es eher hier an den Einstellungen, der Installation, den genutzen Verzeichnis usw. liegen.

PHP ist eine serverseitige Skriptsprache. Der Server wandelt das PHP in für den Browser verständlichen Code (HTML/JS usw.) um. Du brauchst also ein PHP fähigen Webserver, alternative interpretierst du das php via der exe file, da kriegst du jedoch nicht viel raus bzw. keine Website.

Ggf. zeigst du uns mal ein paar Quellcodes die gehen oder nicht gehen und sagst uns wo du XAMPP hininstalliert hast bzw. wo du die PHP-Dateien hingepackt hast. Hast du im XAMPP Control Center auch den Apache gestartet? Was zeigt der dort an? Fehlermeldungen? Ggf. kann er mit dem Port nicht arbeiten bzw. lässt er sich überhaupt starten?

Einen Link kannst du auch haben:

Klingt zwar alles ein wenig krass, da auch schon älter aber je besser du deine Frage stellst, desto bessere Antworten kriegst du. Hab ich geht nicht ist keine gute Beschreibung.

Woher ich das weiß:Beruf – Softwareentwickler/Projektleiter seit 2012

Nein geht nicht. Wenn du Xampp hast dann musst du aber auch noch den Apache starten. Und die php Dateien immer in den htdocs Order kopieren. zb htdocs/php_test

Diese müssen dann auch über den Browser aufgerufen werden

localhost/php_test

Hab ich, normale echo-Befehle gehen, aber andere z. B. nicht!!

0

Was möchtest Du wissen?