Compu: Vergleich Perl/Php

Hi,

ein paar Fragen hinsichtlich perl/php:

Was kann Perl was php nicht kann?
Wo liegen die Stärken von Perl gegenüber php ?

Warum gibt es immer noch so viele Seiten mit perl, obwohl diese Skripte nur in einem bestimmten Verzeichnis ausgeführt werden können?

Danke.

Compu

  1. Hi,

    Was kann Perl was php nicht kann?

    beispielsweise _außerhalb_ von HTTP agieren.

    Wo liegen die Stärken von Perl gegenüber php ?

    PHP ist für den Einsatz im Web konzipiert und hat in dem Bereich daher viele Vorteile gegenüber anderen Techniken. Es versagt jedoch außerhalb dieses Bereichs. Weitere Nachteile von PHP entnimm

    *BITTE*

    dem Forums-Archiv. Dieses Thema wurde in allgemeiner Form schon n mal zu oft durchgekaut. Bei tiefergehenden Spezialfragen bist Du herzlich eingeladen, sie hier zu stellen.

    Warum gibt es immer noch so viele Seiten mit perl, obwohl diese Skripte nur in einem bestimmten Verzeichnis ausgeführt werden können?

    Diese Annahme entspricht nicht den Tatsachen. Ferner existiert kein Weg, ohne den Webmaster zu fragen die verwendete Technik zu ermitteln. Hinter "/cgi-bin/bla.pl" kann pures HTML stecken, hinter "/bla/blub.html" Perl, PHP oder sonstwas.

    Cheatah

    1. OK,

      Danke !

      Hi,

      Was kann Perl was php nicht kann?

      beispielsweise _außerhalb_ von HTTP agieren.

      Wo liegen die Stärken von Perl gegenüber php ?

      PHP ist für den Einsatz im Web konzipiert und hat in dem Bereich daher viele Vorteile gegenüber anderen Techniken. Es versagt jedoch außerhalb dieses Bereichs. Weitere Nachteile von PHP entnimm

      *BITTE*

      dem Forums-Archiv. Dieses Thema wurde in allgemeiner Form schon n mal zu oft durchgekaut. Bei tiefergehenden Spezialfragen bist Du herzlich eingeladen, sie hier zu stellen.

      Warum gibt es immer noch so viele Seiten mit perl, obwohl diese Skripte nur in einem bestimmten Verzeichnis ausgeführt werden können?

      Diese Annahme entspricht nicht den Tatsachen. Ferner existiert kein Weg, ohne den Webmaster zu fragen die verwendete Technik zu ermitteln. Hinter "/cgi-bin/bla.pl" kann pures HTML stecken, hinter "/bla/blub.html" Perl, PHP oder sonstwas.

      Cheatah

      1. Hallo,

        ich bin gerade dabei, mich _etwas_ in Perl einzuarbeiten, damit ich nicht so dumm dastehe, wenn mein Partner demnächst zum Seminar einlädt...

        Was mir aber bei Perl sofort ins Auge gesprungen ist, ist dass man eigene Datenstrukturen definieren kann, so wie ich das eben von Assembler, Pascal oder C gewohnt bin. Bei PHP habe ich bis heute noch nicht rausbekommen, wie man dort eine Struktur definieren kann. Kann mir da mal jemand auf die Sprünge helfen?

        Bitte keine Arrays, sondern echte "Records" oder "Structs"

        LG

        Tom

    2. Tag

      Was kann Perl was php nicht kann?

      beispielsweise _außerhalb_ von HTTP agieren.

      Äh, das kann PHP aber auch. Es wird recht oft übersehen, daß PHP auch eine Scriptsprache ist, die außerhalb einer Webserver-Umgebung angewendet werden kann (auf meinem Server laufen z.B. einige PHP-Crons).
      Natürlich ist PHP für diesen Fall nicht so sehr geeignet wie Perl, funktionieren tut es aber ohne Probleme.

      Ciao,

      Harry

      1. Hi,

        Es wird recht oft übersehen, daß PHP auch eine Scriptsprache ist, die außerhalb einer Webserver-Umgebung angewendet werden kann (auf meinem Server laufen z.B. einige PHP-Crons).

        Voraussetzung ist AFAIK, dass PHP als CGI installiert ist, nicht als Server-Modul. Nichtsdestotrotz ist dies eine Nutzung, für die PHP nie gedacht war - es ist eher Zufall, dass ein solcher Weg existiert. Die Möglichkeiten, die in dieser allgemeinere Umgebung bestehen, sind entsprechend begrenzt: Die PHP-Funktionalität basiert darauf, per HTTP angesprochen zu werden und ergo mit einem Client zu kommunizieren.

        Bei Perl (und vielen anderen Sprachen) ist es eher umgekehrt: Sie sind für die Allgemeinheit konzipiert, und ganz nebenbei kann man sie (natürlich) auch in einem HTTP-Umfeld laufen lassen.

        Cheatah

        1. Tag

          Voraussetzung ist AFAIK, dass PHP als CGI installiert ist, nicht als Server-Modul.

          Man kann durchaus PHP als Servermodul installieren und dann halt nochmal einen extra PHP-Scriptinterpreter kompilieren, der andere Einstellungen hat und an keinen Webserver gebunden ist.

          Nichtsdestotrotz ist dies eine Nutzung, für die PHP nie gedacht war - es ist eher Zufall, dass ein solcher Weg existiert.

          Auch jein. Es gibt inzwischen durchaus einige ernstzunehmende Projekte, die PHP nur als Scriptsprache benutzen, so z.B. PHP GTK http://gtk.php.net/

          Bei Perl (und vielen anderen Sprachen) ist es eher umgekehrt: Sie sind für die Allgemeinheit konzipiert, und ganz nebenbei kann man sie (natürlich) auch in einem HTTP-Umfeld laufen lassen.

          Das lässt sich ja nur schwerlich abstreiten ;)
          Klar, Perl und Konsorten sind da wesentlich besser geeignet. Aber für kleinere Sachen läßt sich PHP durchaus auch nutzen (z.B. um die IP-Adresse des eigenen Servers auf einer Webseite per FTP bei jeder Einwahl zu aktualisieren oder so). Dann muß man net extra Perl lernen ;=)

          Ciao,

          Harry

          1. Hi,

            Es gibt inzwischen durchaus einige ernstzunehmende Projekte, die PHP nur als Scriptsprache benutzen, so z.B. PHP GTK http://gtk.php.net/

            ich mag da eine etwas eingeschränkte Sichtweise haben; aber für mich klingt all sowas immer nach "Wie schaffen wir es, PHP _trotzdem_ außerhalb von HTTP sinnvoll einzusetzen?"

            Dann muß man net extra Perl lernen ;=)

            Herrje, dann nimm halt Python ;-)

            Ein Programmierer ist in erster Linie Programmierer, nicht Programmiersprachenbenutzer. _Welche_ Sprache man einsetzt, ist eher unerheblich - hauptsache, sie ist problem- und umgebungsabhängig eine gute Wahl. Ob man dafür nun ein neues Manual aufschlägt oder weiter in den bereits bekannten agiert, ist egal - die Basis einer neuen Sprache erlernt sich in drei Minuten, beim Angucken eines Beispiels.

            Cheatah

            1. moin

              Dann muß man net extra Perl lernen ;=)

              Herrje, dann nimm halt Python ;-)

              Gibt's auch Q-Basic für Unix ? Das könnte ich nämlich auch schon :) Oder GW-Basic. Oder diese Basic-Variante, die immer auf den Ataris lief (hab vergessen, wie die hieß). Oder die Variante, die in Opas altem "Schneider"-PC als OS arbeitet ...

              _Welche_ Sprache man einsetzt, ist eher unerheblich - hauptsache, sie ist problem- und umgebungsabhängig eine gute Wahl. Ob man dafür nun ein neues Manual aufschlägt oder weiter in den bereits bekannten agiert, ist egal - die Basis einer neuen Sprache erlernt sich in drei Minuten, beim Angucken eines Beispiels.

              Äh, na gut, wenn ich aber höchstens eine Minute investieren will, weil mir das Script nicht mehr wert ist ?

              Schmarn, hast ja recht. Aber für kleinere Sachen würde ich mir echt nicht die Mühe machen, noch was neues zu lernen ... geschweigedenn mich 5 Stunden durch irgendwelche Tutorials zu quälen (Nur mit Beispielen geht's meiner Meinung nach nicht _immer_ ... aber meistens).

              Ciaom

              Harry

  2. Was kann Perl was php nicht kann?
    Wo liegen die Stärken von Perl gegenüber php ?

    Ich schlage vor, das selber zu recherchieren.

    Warum gibt es immer noch so viele Seiten mit perl, obwohl diese Skripte nur in einem bestimmten Verzeichnis ausgeführt werden können?

    Das ist Unsinn, das ist einzig und allein eine Konfigurationssache.

  3. Hallo!

    _Welche_ Sprache man einsetzt, ist eher unerheblich - hauptsache, sie ist problem- und umgebungsabhängig eine gute Wahl. Ob man dafür nun ein neues Manual aufschlägt oder weiter in den bereits bekannten agiert, ist egal - die Basis einer neuen Sprache erlernt sich in drei Minuten, beim Angucken eines Beispiels.

    Aber nur wenn man Programmieren von Grund auf gelernt hat. Ich z.B. bin mit PHP eingestiegen, und habe große Probleme auf PERL umzusteigen! Für ein PHP-Script was vielleicht 20 Minuten dauern würde zu programmieren, brauche ich in PERL 5 Stunden und länger, einfach da ich die Syntax noch nicht richtig kannte. Jetzt gehts so langsam, aber mir fehlen immer wieder äquivalente Funktionen zu PHP-Funktionen, wobei ich am Ende meist feststelle das es in PERL noch einfacher gelöst ist! Wobei nicht immer(Arrays, Datum, Einbindung in HTML, Sessions...)
    Cheatah irrt mit seiner Beschränkung von PHP auf HTTP, das ist Schubladendenken, er mag PHP einfach nicht, was sicher berechtigte Gründe hat, die daraus resultieren das PHP sehr leicht zu erlernen ist und man mit sehr wenig Aufwand schon recht viel erreichen kann - aber es fehlt den meisten Programmierern an Grundlagen, wodurch verschiedene Probleme enstehen.
    Z.B. kann man am Anfang des PHP-Scriptes #!/usr/bin/php -q angeben, dann können PHP-Scripte _direkt_ über die Shell gestartet werden. Bzgl. des Filesystems, Sockets, System-Aufrufen... Cronjobs... kann PHP sehr viel. Für die meisten allgemeinen Anforderungen reicht das!

    Ich habe erst ein PERL-Script geschrieben, weil ich in PHP das erste mal "am Ende" war, und das war kürzlich zum parsen und schreiben von Excel. So langsam lerne ich die Vorteile von PERL schätzen, durch die Vielzahl der Module und wirklich ausgeklügelte Syntax bietet PERL wirklich schier unendliche programmiertechnische Möglichkeiten, und das mit sehr wenig Code!

    Ich werde PERL wohl in Zukunft vermehrt einsetzen, aber ich werde auch an PHP festhalten, denn für einfache Anwendungen bin ich da einfach sicherer und erfahrener.  IMO ist PHP duchaus besser für die Einsatzzwecke gedacht, auf die Cheatah den Einsatzbereich von PHP beschränkt sieht, aber es gibt genügend Anwendungen, die durch PERL Module sehr viel einfacher und besser sind, als das in PHP selbst zu programmieren!

    Grüße
    Andreas