Manuel Burghammer: Was ist besser ?? PERL oder PHP3(4)

tagchen,

was von den beiden ist sinnvoller (performance etc.) ??

der server stellt beides zur verfuegung.
es geht um die anbindung an eine mySQL datenbank und ich will das natuerlich so ressourcenschonend wie moeglich machen :o))

thx 4 hlp

  1. tagchen,

    was von den beiden ist sinnvoller (performance etc.) ??

    der server stellt beides zur verfuegung.
    es geht um die anbindung an eine mySQL datenbank und ich will das natuerlich so ressourcenschonend wie moeglich machen :o))

    thx 4 hlp

    PHP4 ist extrem viel besser als Perl.
    Nicht nur beim Umgang mit dbs sondern ganz allgemein.

    Viele selbstverständlich Dinge für die du in Perl externe Module laden musst kann php ganz von alleine. (zB Variablen eines FORM tags verarbeiten)

    Ich habe zuerst Perl gemacht und dann bei php3 den Einstieg in php.
    Oftmals liegen wirklich Welten zwischen der Realisierung in Perl vs. PHP.

    Wozu du in Perl ganze Seiten Code schreibst genügen in php oft einige Zeilen.

    Beispiel:
    Du schickst Formular DAten an eine Php Seite.

    Wo du jetzt in Perl erst einmal nachkramst, wie den die Daten geschickt wurden kannst du sie in php einfach benutzen, sie sind unter anderem als Variablen im scope.

    Mein Tip sieh dir einfach einmal die Php Docu an.

    cu
      Friedhelm.Heyer@corner.de

    1. Hallo Friedhelm,

      Wo du jetzt in Perl erst einmal nachkramst, wie den die Daten geschickt wurden kannst du sie in php einfach benutzen, sie sind unter anderem als Variablen im scope.

      Du hast recht - aber nur teilweise, denn so schwer macht es Perl einem doch auch nicht:

      use CGI.pm (":standard");                   # am Anfang des Scripts
      $name = param("name");                      # irgendwo
      print "Content-type... Hallo, $name! ...";  # irgendwo

      Eingabe kann per GET oder POST erfolgen, die Enkodierung wird automatisch durchgeführt. (Die Kommentare beziehen sich darauf, wo du was schreiben musst.) Sind nur zwei Zeilen mehr. Aber es geht ja auch nicht alleine um das ;-).

      bis nextens
      xitnalta

      <img src="http://www.xitnalta.com/web/files/0006_05.gif" alt="">

      1. tagchen,

        das schoene an PHP ist aber das man gar nix dergleichen machen muss sondern die parameter stehen sofort zur verfuegung :o)

        im moment kann ich halt nur grundkenntnisse in PHP deshalb greif ich noch mehr auf PERL zurueck....

        1. hi!

          das schoene an PHP ist aber das man gar nix dergleichen machen muss sondern die parameter stehen
          sofort zur verfuegung :o)

          Was soll daran schön sein? Das verschmutzt mir doch nur meinen Namespace...

          bye, Frank!

          1. Hallo Frank,

            hi!

            das schoene an PHP ist aber das man gar nix dergleichen machen muss sondern die parameter stehen
            sofort zur verfuegung :o)

            Was soll daran schön sein? Das verschmutzt mir doch nur meinen Namespace...

            Wieso?

            Die Namen hast du doch selbst ausgesucht...

            Zudem sind diese Namen nur im globalen scope.

            Na und da du als intelligenter Programmierer sowieso möglichst keine globalen Vars anlegst ist das ja dann wohl auch ok.

            jetz geh ich aber nach Hause.
            F.Heyer

      2. Hallo Xinalta

        Wo du jetzt in Perl erst einmal nachkramst, wie den die Daten geschickt wurden kannst du sie in php einfach benutzen, sie sind unter anderem als Variablen im scope.

        Du hast recht - aber nur teilweise, denn so schwer macht es Perl einem doch auch nicht:

        use CGI.pm (":standard");                   # am Anfang des Scripts

        Zum Glück hast du das CGI.pm benutzt, ohne

        $name = param("name");                      # irgendwo
        print "Content-type... Hallo, $name! ...";  # irgendwo

        Eingabe kann per GET oder POST erfolgen,

        wie in PHP.

        die Enkodierung wird automatisch durchgeführt. (Die Kommentare beziehen sich darauf, wo du was schreiben musst.)

        wie in PHP.

        Sind nur zwei Zeilen mehr.

        Aber diese Zeile mehr benötigst du für _jeden_ Parameter einzeln,
        wenn du nicht nur mit dem hash arbeiten willst.

        Wenn in einem Form Tag einer Seite ein
        <input text name=VarName> steht und dies an eine php Seite geschickt wird, dann gibt es einfach die Variable VarName und diese enthält den Inhalt den der User eingetippt hat.

        Aber es geht ja auch nicht alleine um das ;-).

        Eben, die ursprüngliche Frage war auf db und Performance ausgerichtet und da fährst du seit php4 eben mit diesem besser.

        bis nextens
        xitnalta

        <img src="http://www.xitnalta.com/web/files/0006_05.gif" alt="">

        bis dendens
        Friedhelm

        1. Aber diese Zeile mehr benötigst du für _jeden_ Parameter einzeln,
          wenn du nicht nur mit dem hash arbeiten willst.

          Was ist das fuer ein Kindergarten-Gequatsche! php ist besser, weil ich in Perl zwei Zeilen mehr brauche. Hahaha, mal abgesehen davon, ist's unfug, denn ich kann mit param 'xyz' *jederzeit* auf den Inhalt zugreifen.

          Peter

          1. Hallo Peter

            Aber diese Zeile mehr benötigst du für _jeden_ Parameter einzeln,
            wenn du nicht nur mit dem hash arbeiten willst.

            Was ist das fuer ein Kindergarten-Gequatsche!

            Was möchtest du mir mit dieser hochqualifizierten Bemerkung nur sagen?

            php ist besser, weil ich in Perl zwei Zeilen mehr brauche. Hahaha, mal abgesehen davon, ist's unfug,

            denn ich kann mit param 'xyz' *jederzeit* auf den Inhalt zugreifen.

            Genau das steht oben in meinem Posting.
            Da steht klar, das die zusätzlichen Codezeilen (eine _je_ Variable) nur dann nötig sind, wenn man _nicht_ nur mit dem Hash arbeiten will.

            Peter

            Ich klinke mich jetzt aus,
            da ich keine Lust auf eine Diskussion habe,
            die sich dem von dir angestrebten Niveau nähert.

            mfg
              Friedhelm

            1. hi

              Ich klinke mich jetzt aus,
              da ich keine Lust auf eine Diskussion habe,
              die sich dem von dir angestrebten Niveau nähert.

              sorry, aber das niveau hast _du_ gedrueckt

              nix fuer ungut

              cua

              n.d.p.

    2. tagchen,

      was von den beiden ist sinnvoller (performance etc.) ??

      der server stellt beides zur verfuegung.
      es geht um die anbindung an eine mySQL datenbank und ich will das natuerlich so ressourcenschonend wie moeglich machen :o))

      thx 4 hlp

      PHP4 ist extrem viel besser als Perl.
      Nicht nur beim Umgang mit dbs sondern ganz allgemein.

      Das seh ich nicht so. Perl ist eine ausgewachsene Programmiersprache, mit der man Anwendungen
      z.B. für Linux/Unix Administration oder Netzwerke schreiben kann. PHP ist dagegen eine
      Middleware-Sprache, die man in erster Linie in Zusammenhang mit einem Webserver einsetzt. Für
      diesen Zweck ist PHP4 allerdings sehr komfortabel - das stimmt.

      Viele selbstverständlich Dinge für die du in Perl externe Module laden musst kann php ganz von alleine. (zB Variablen eines FORM tags verarbeiten)

      Gerade das ist die Stärke von Perl. Es gibt eine Unmenge an Modulen, beinahe für jeden Zweck und
      dank OpenSource auch umsonst. Diese Vielzahl an Modulen/Klassen macht für mich Perl, nach Java
      zur zweitwichtigsten Internetsprache. Für die Anbindung von MySQL verwendet man z.B. das DBI Modul
      in Zusammenhang mit dem passenden DBD-Treiber Modul für MySQL. Man muss nicht viel mehr
      Zeilen schreiben als bei PHP, der Vorteil aber ist, wenn man den DBD-Treiber wechselt, dann kann
      man ohne viel am Code zu ändern eine andere Datenbank einsetzen. Die Treiber sind allerdings nicht
      in der Standard-Installation von Perl dabei. Man sollte also beim Provider nachfragen, ob diese Module
      einem zur Verfügung stehen.

      Ich habe zuerst Perl gemacht und dann bei php3 den Einstieg in php.
      Oftmals liegen wirklich Welten zwischen der Realisierung in Perl vs. PHP.

      Ich denke für jede Sprache gibt es ein eigenes Einsatzgebiet. Perl ist im bereich der
      Netzwerkprogrammierung z.b. Sockets usw. sehr leistungsfähig. Wie sieht es bei PHP damit
      aus? Hab mich damit noch nicht beschäftigt.

      Wozu du in Perl ganze Seiten Code schreibst genügen in php oft einige Zeilen.

      Beispiel:
      Du schickst Formular DAten an eine Php Seite.

      Wo du jetzt in Perl erst einmal nachkramst, wie den die Daten geschickt wurden kannst du sie in php einfach benutzen, sie sind unter anderem als Variablen im scope.

      Das Modul CGI.pm (in der Standardinstallation enthalten) löst dieses Problem. Ist damit auch nicht
      komplizierter als in PHP.

      Mein Tip sieh dir einfach einmal die Php Docu an.

      Nun es gibt mittlerweile auch ne Menge guter Bücher über PHP, z.B. von Jörg Krause, Hanser Verlag
      (allerdings PHP3), "PHP4 und MySQL", Markt und Technik.

      Und für Perl: www.Perl.com (CPAN !!), www.oreilly.de, www.cgi-resources.com, "Programming the
      Perl DBI",  Descartes, O'Reilly, "MySQL", Dubois, Markt und Technik

      Viel Spass beim recherchieren :-)

      Stephan

      1. Hallo Stephan

        Das seh ich nicht so. Perl ist eine ausgewachsene Programmiersprache, mit der man Anwendungen

        Was ich _nie_ bestreiten würde.

        z.B. für Linux/Unix Administration oder Netzwerke schreiben kann. PHP ist dagegen eine
        Middleware-Sprache, die man in erster Linie in Zusammenhang mit einem Webserver einsetzt.

        Das ist nicht richtig.
        Du kannst in php genauso admin Scripte schreiben wie in Perl.
        Middelware war der Ursprung, aber min. seit php3 ist diese Aussage nicht mehr richtig.

        Für

        diesen Zweck ist PHP4 allerdings sehr komfortabel - das stimmt.

        »»

        Da dies sein Ursprung ist, liegt da natürlich auch eine der besonderen Stärken von php. Aber das ist längst nicht mehr alles. Und seit es den Zend gibt bin ich auch mit der Performance von reinen Scripten zufrieden. Php4 braucht sich in Performance Angelegenheiten nicht hinter Perl zu verstecken (was die php3 noch musste).

        Viele selbstverständlich Dinge für die du in Perl externe Module laden musst kann php ganz von alleine. (zB Variablen eines FORM tags verarbeiten)
        Gerade das ist die Stärke von Perl.

        Die Stärke ist sicher nicht das Fehlen wichtiger Dinge, sondern das es zum Glück die Möglichkeit von Modulen gibt.

        Die Modul Schnittstelle von Perl ist eine Perl Stärke, da hast du völlig recht. Auch die (Danke CPAN!) Anzahl der Module ist eine Stärke, aber dies sollte man eher als Pluspunkt weniger als Stärke sehen.

        Es gibt eine Unmenge an Modulen, beinahe für jeden Zweck und

        dank OpenSource auch umsonst. Diese Vielzahl an Modulen/Klassen macht für mich Perl, nach Java

        Rein Mengenmässig hast du sicher recht.
        Aber php steigt stark an.
        Ob es je die Verbreitung von Perl erhält?
        Das ist mir fast egal.
        Bei Neukunden erleben ich, das diese auf Php hingewiesen sich immer für Php entscheiden.

        zur zweitwichtigsten Internetsprache. Für die Anbindung von MySQL verwendet man z.B. das DBI Modul
        in Zusammenhang mit dem passenden DBD-Treiber Modul für MySQL. Man muss nicht viel mehr
        Zeilen schreiben als bei PHP, der Vorteil aber ist, wenn man den DBD-Treiber wechselt, dann kann
        man ohne viel am Code zu ändern eine andere Datenbank einsetzen. Die Treiber sind allerdings nicht
        in der Standard-Installation von Perl dabei. Man sollte also beim Provider nachfragen, ob diese Module
        einem zur Verfügung stehen.

        »»

        Das Modul ist eine Schicht zwischen db und Anwendung es kostet Performance. Bringt aber tatsächlich den Vorteil das der Anwender die db wechseln kann.

        Wie oft wird das geschehen?
        Und dann auch noch ohne die neuen db Features (warum sonst wechseln?) in das Prog einzubauen?

        Ich habe zuerst Perl gemacht und dann bei php3 den Einstieg in php.
        Oftmals liegen wirklich Welten zwischen der Realisierung in Perl vs. PHP.
        Ich denke für jede Sprache gibt es ein eigenes Einsatzgebiet. Perl ist im bereich der
        Netzwerkprogrammierung z.b. Sockets usw. sehr leistungsfähig. Wie sieht es bei PHP damit
        aus? Hab mich damit noch nicht beschäftigt.

        »»

        Identische Funktionalität. PS auch bei den Regulären Ausdrücken, die IMHO mit das beste an Perl sind.

        Wozu du in Perl ganze Seiten Code schreibst genügen in php oft einige Zeilen.

        Beispiel:
        Du schickst Formular DAten an eine Php Seite.

        Wo du jetzt in Perl erst einmal nachkramst, wie den die Daten geschickt wurden kannst du sie in php einfach benutzen, sie sind unter anderem als Variablen im scope.
        Das Modul CGI.pm (in der Standardinstallation enthalten) löst dieses Problem. Ist damit auch nicht
        komplizierter als in PHP.

        »»

        Mein Tip sieh dir einfach einmal die Php Docu an.
        Nun es gibt mittlerweile auch ne Menge guter Bücher über PHP, z.B. von Jörg Krause, Hanser Verlag
        (allerdings PHP3),

        Nicht kaufen. Die Erweiterungen von php3 zu php4 sind sehr umfangreich, erst einmal die brauchbare Docu (auch in Deutsch) lesen, dann evnt. ein Buch kaufen.

        "PHP4 und MySQL", Markt und Technik.

        Und für Perl: www.Perl.com (CPAN !!), www.oreilly.de, www.cgi-resources.com, "Programming the
        Perl DBI",  Descartes, O'Reilly, "MySQL", Dubois, Markt und Technik

        Viel Spass beim recherchieren :-)

        Stephan

        cu
          F.Heyer

        1. Hallo,

          Für

          diesen Zweck ist PHP4 allerdings sehr komfortabel - das stimmt.

          PHP4 (oder PHP5 ?! *grübel*)  ist kplt. in Java geschrieben. Warum sollte ich nun mit dem PHP-Kram beschäftigen wenn man es genau so gut in Java machen kann ?
          PHP ist genau so eine "Simpelsprache" wie ASP, welche im Grenzbereich nie und nimmer an Perl oder Java drankommen. Ich habe 3 Jahre nur mit ASP Rumgezaubert, danach in PHP reingeschnuppert, und bin dann bei Perl gelandet (Zwangsmaßnahme meines AG *g*), und proggen nun mit Java.  An Perl kommt nur Java dran, und dann mit Abstand lange nix. Es tut nix zur Sache ob dieses oder jenes einfach oder kompliziert zu berkstelligen ist, sondern ob es überhaupt möglich ist. Und da kann PHP und ASP ganz schnell die Koffer packen.
          Und was die Performance angeht, Mod-Perl und Java SIND kompiliert, und werden nicht zur Laufzeit kompiliert (wie es bei PHP ist weiß ich nicht)
          Kann man mit PHP einfach „mal so" ein Stinknormales Grafikprogramm starten um Gifs in JPGs umzuwandeln ? Oder mal ganz frech vom Server aus eine fremde Seite auslesen ?
          Das ganze geht mit Perl oder Java sowas von einfach das es keine Erwähnung wert ist.
          Ich denke mal das sich das Lager PHP/ASP und Perl/Java schlicht und einfach zwischen den Leuten aufteilt, welche damit „RundUmDieUhr" und „nurmalSo" oder „wirHabenKeine5-Stelligen BesucherAmTag" aufteilen wird. Ansonsten ist die ganze Sache ein Glaubenskrieg.
          Cucu
          Thomas

          1. Hallo Thomas,

            PHP4 (oder PHP5 ?! *grübel*)  ist kplt. in Java geschrieben.

            Woher hast du den diesen Unsinn?
            (a) es gibt zz. noch kein PHP5
            (b) es ist komplett in c geschrieben NIX Java.

            Warum sollte ich nun mit dem PHP-Kram beschäftigen wenn man es genau so gut in Java machen kann ?

            Wie kommst du auf die Idee php sei in Java geschrieben?
            Das ist ganz einfach nicht richtig.

            PHP ist genau so eine "Simpelsprache" wie ASP, welche im Grenzbereich nie und nimmer an Perl oder Java drankommen.

            Was geht in Perl und nicht in php?
            Oben weisst du nicht einmal das PHP in c geschrieben ist und hier verteilst du derartige Weisheiten.

            Ich habe 3 Jahre nur mit ASP Rumgezaubert, danach in PHP reingeschnuppert, und bin dann bei Perl gelandet (Zwangsmaßnahme meines AG *g*), und proggen nun mit Java.

            Was eine gute Entscheidung war.

            An Perl kommt nur Java dran, und dann mit Abstand lange nix.

            Jave ist weit "besser" als Perl. Irgendie habe ich den Eindruck du hast keine Ahnung worüber du sprichts, schon allein der Unfug php sei in Java geschrieben.

            Es tut nix zur Sache ob dieses oder jenes einfach oder kompliziert zu berkstelligen ist, sondern ob es überhaupt möglich ist. Und da kann PHP und ASP ganz schnell die Koffer packen.

            Bei ASP ist das sicher richtig.
            Aber ASP != PHP.

            Du kannst in PHP wie auch in Perl oder Java ALLES Programieren, was berechenbar ist. (Falls du überhaupt verstehts was berechenbar in diesem Zusammenhang bedeutet).

            Und was die Performance angeht, Mod-Perl und Java SIND kompiliert, und werden nicht zur Laufzeit kompiliert (wie es bei PHP ist weiß ich nicht)

            Das mod_php ist genau so wie das mod_perl kompilierter C code.
            Was du hier eventuell meintest ist, das mod_perl das auszuführende Script als bin code im Speicher halten kann.

            Kann man mit PHP einfach „mal so" ein Stinknormales Grafikprogramm starten um Gifs in JPGs umzuwandeln ?

            Natürlich sogar einfacher als in Perl es gibt
            (a) Funktionen für den Aufruf externer Programme (wie in Perl)
            (b) den backtick operator (der in Perl fehlt)

            Oder mal ganz frech vom Server aus eine fremde Seite auslesen ?

            Sogar einfacher als in Perl. In Perl benötigst du ein zusätzliches Modul php kann es von alleine:

            $variable = file("http://Domain.tld/fremdeSeite.html");

            Das ganze geht mit Perl oder Java sowas von einfach das es keine Erwähnung wert ist.

            Und in php ist es _einen_ Schritt einfacher, da du für eine solche Selbstverständlichkeit KEIN zusätzliches CGI::SIMPLE o.ä. benötigst.

            Ich denke mal das sich das Lager PHP/ASP und Perl/Java schlicht und einfach zwischen den Leuten aufteilt, welche damit „RundUmDieUhr" und „nurmalSo" oder „wirHabenKeine5-Stelligen BesucherAmTag" aufteilen wird. Ansonsten ist die ganze Sache ein Glaubenskrieg.

            Aber nur wenn Leute die so extrem wenig Ahnung von den Sprachen haben derartiges verzapfen wie du hier in diesem Posting.
            Wenn man wie du Wissen mit meinen oder Glauben verwechselt kommt es eben zu diesen lächerlichen Meiner ist Länger als Deiner Threads.
            (Aber dann ohne mich!)

            Die Frage ASP / PHP entscheidet sich schon bei der Auswahl des Servers.

            Die Frage Perl / PHP wird bei neuen Projekten zumeist von php gewonnen. Die Lernkurve ist niedriger, dynamische HTML Seiten sind damit _erheblich_ leichter erstellt als mit Perl. (Ca. Faktor drei in der Arbeitszeit!)

            Java ist als Client Seite ja wohl eher an einer ganz anderen Stelle einzusortieren.

            ASP PHP und Perl sind hier ja wohl als Serverseitige Applikations Sprachen anzusehen der Vergleich zu Java geht also am Thema vorbei.

            PHP ist seit der (neuen) Version 4 dem Perl überlegen auch in der Performance. Java ist zumindest die Version von IBM ist deutlich performanter, nahe am c. (Das gilt aber nur für die Implementation von IBM!)

            Wenn du sowenig und dann auch noch so falsches über PHP weisst, was willst du mir dann hier weismachen?

            cu
            F.Heyer

            1. (b) den backtick operator (der in Perl fehlt)

              Deine Perl-Kenntnisse lassen zu wuenschen uebrig. Programmier lieber in PHPx.

              Peter