Perl und PHP
Nina
- sonstiges
3 Danny0 Nina0 Stefao Albrecht0 xwolf
Hallo,
ich bin gerade dabei eine Sprache zu lernen also PHP oder Perl. Meine Frage ist nun einfach was ist besser und was wird in der Zukunft mehr gefragt PHP oder Perl.
Dann noch was:
SO mache ich das in PHP:
<html>
<head>
</head>
<body>
<h1>erstes PHP-Skript</h1>
<?
echo "Hallo Welt!<br>\n";
//Das ist ein Kommentar
echo "Das ist meine erste Seite<br>\n";
?>
</body>
</html>
Ok und wie mache ich dsa dann in Perl? Und wie muss ich das dann in einer Seite aufrufen?
Ich hoffe Ihr könnte mir da ein wenig was sagen!
Gruß Nina
Hallo Nina,
das hängt stark von den Anforderungen und der Aufgabe ab! Eine allgemeine Aussgage, ob Perl oder PHP "besser" ist, läßt sich nicht treffen...
Da ich beide Sprachen gut kenne und auch beide in der Praxis einsetze, kann ich das gut beurteilen.
Fakt ist, das PHP speziell für den Einsatz im Web, bzw. auf Servern entwickelt wurde, Perl aber nicht. Wenn Du also hauptsächlich an Web- Seiten oder Anwendungen denkst, dann ist PHP wohl die bessere Wahl und heute und in Zukunft mehr gefragt. Vor allem mit der neuen Version PHP5 wird PHP noch weiter an Bedeutung gewinnen und auch in professionelle Bereiche vorstoßen, die vorher fast ausschließlich von Java bestimmt wurden...
Perl ist eher eine systemorientierte Sprache, z.B. für Datei u. Text-Verarbeitung, Serversteuerung, Systemüberwachung, etc.. In Perl sind natürlich auch Webseiten möglich aber eigentlich nur über die CGI-Schnittstelle. Die dynamische Erzeugung von Webseiten mit Perl ist auch etwas aufwändiger, bzw. umständlicher und schwieriger zu erlernen als mit PHP. Der gravierenste Unterschied ist, das PHP und HTML, bzw. Javascript, etc.. in einem Webdokument auf dem Server gemischt werden können und so auch ohne Mehraufwand interpretiert werden. In Perl muß man dagegen i.d.R. (d.h. wenn man keine speziellen Techniken oder Servermodule verwendet) den kompletten Quellcode über Perl-Befehle erzeugen und selbst für die Ausgabe sorgen.
Dein Bsp. würde in Perl etwa so aussehen:
#!/opt/bin/perl
print "Content-type: text/html\n\n";
print ";
<html>
<head>
</head>
<body>
<h1>erstes PHP-Skript</h1>
";
print "Hallo Welt!<br>\n";
print "Das ist meine erste Seite<br>\n";
print "
</body>
</html>
";
Abgespeichert werden muß das "Programm" mit der Endung .pl oder .cgi
Der Webserver muß natürlich entsprechend konfiguriert sein...
freundlichen Gruß
Danny
Hallo,
hmm ich habe vor ganze Seite zu machen also hauptsächlich im Web. Aber du hast gerade geschrieben, dass man PHP nicht nur für WebSeiten verwenden kann oder? Kann man denn PHP auch für andere Sachen noch verwenden?
*grml* ich habe gerade mal das Script auf den Server geladen und zwar in das Verzeichniss cgi-bin und habe das dann test.pl genannt. Dann wenn ich das aber aufrufe:
http://www.meine_Seite.de/cgi-bin/test.pl
dann kommt nur, dass die Seite nicht vorhanden ist :-(
Hmm was mache ich da denn falsch?
Gruß Nina
frag deinen provider, ob cgi unterstützt wird.
"Kann man denn PHP auch für andere Sachen noch verwenden?"
php ist eine reine websprache, insofern lassen sich php anwendungen für den normaluser nur über das www starten. abgesehen davon ist php sehr umfangreich: es hat bibliotheken, mit denen du pdf, viele grafikdateien, files, ordner, datenbanken uvm. (be)schreiben/bearbeiten kannst.
und die bibliotheken häufen sich.
zu perl ist zu sagen, dass man damit nahezu jeden "scheiß" machen kann, wie mein sponsor zu sagen pflegt. es gibt so viele unnütze bibliotheken in perl, die auch nur aus diesem grund geschrieben wurden. so gibt es libs, die "fake" genannt werden...
perl ist eindeutig die mächtigere sprache, falls du das von anfang an wissen wolltest. unter kennern wird sie auch als sprache der hacker bezeichnet.
你好 Stefao,
perl ist eindeutig die mächtigere sprache, falls du das von anfang an
wissen wolltest. unter kennern wird sie auch als sprache der hacker
bezeichnet.
Meine Jüte, wo hast du denn sowas her?
再见,
克里斯蒂安
ein dreckiger tippfehler hart sich eingeschmuggelt:
mein name ist stefano
was soll nun falsch sein?
nichts.
你好 Stefano,
was soll nun falsch sein?
Beides.
- dass perl die mächtigere sprache ist?
Sowohl PHP als auch Perl sind Turing-Vollständig.
Damit sind beide Sprachen gleich-“mächtig”.
- dass sie als hackersprache bezeichnet wird?
Die “Hacker-Sprache” ist C.
再见,
克里斯蒂安
Sup!»
Meine Jüte, wo hast du denn sowas her?
Da sieht man, dass Du kein 1337-}{4X0r bist - sonst würdest Du das ja wissen, Noob!
Gruesse,
Bio
你好 Bio,
Meine Jüte, wo hast du denn sowas her?
Da sieht man, dass Du kein 1337-}{4X0r bist - sonst würdest Du das ja
wissen, Noob!
Hehe, das könnte natürlich eine Möglichkeit sein.
再见,
克里斯蒂安
Hi,
php ist eine reine websprache, insofern lassen sich php anwendungen für den normaluser nur über das www starten.
Wer sagt denn sowas? Was hindert irgendwem dran, ein PHP-Script in der Kommandozeile (Dos oder Linux oder sonstwas) aufzurufen?
Und das PERL mächtiger ist, würde ich relativieren. Das kommt, wie so vieles, auf die Anwendung an. Richtiger wäre, das man PERL mächtiger machen kann als PHP, wen man es braucht und weiss wies geht ;)
Mit PHP kann man seit einiger Zeit auch Kommandozeilen-Scripte schreiben, die nicht unbedingt über einen Webserver laufen müssen. Du kannst damit z.B. DOS oder Unix/Linux-Kommandos nachbauen, Dateien verarbeiten, etc.. Du kannst eigentlich alles machen, sogar "richtige" Windows-Programme, bzw. Exe-Dateien damit entwickeln, wenn Du es drauf hast (in Verbindung mit der Programmiersprache C).
http://www.meine_Seite.de/cgi-bin/test.pl
Wie geschrieben, der Webserver muß entsprechend konfiguriert sein... Dann findet er auch die Seite test.pl in cgi-bin und führt es entsprechend aus. Vielleicht stimmen in Deinem Fall einfach nur die Benutzerrechte nicht, so das es nicht über Web ausgeführt werden kann?
MfG
Danny
mit dieser antwort ist man wunschlos glücklich.
perfekt.
Hi,
das hängt stark von den Anforderungen und der Aufgabe ab! Eine allgemeine Aussgage, ob Perl oder PHP "besser" ist, läßt sich nicht treffen...
Stimmt
Fakt ist, das PHP speziell für den Einsatz im Web, bzw. auf Servern entwickelt wurde, Perl aber nicht. Wenn Du also hauptsächlich an Web- Seiten oder Anwendungen denkst, dann ist PHP wohl die bessere Wahl und heute und in Zukunft mehr gefragt. Vor allem mit der neuen Version PHP5 wird PHP noch weiter an Bedeutung gewinnen und auch in professionelle Bereiche vorstoßen, die vorher fast ausschließlich von Java bestimmt wurden...
Gegenthese: In 5 Jahren wird die XUL-Programmierung bedeutender sein un zu PHP stehen, wie PHP heute zu Perl.
Perl ist eher eine systemorientierte Sprache, z.B. für Datei u. Text-Verarbeitung, Serversteuerung, Systemüberwachung, etc.. In Perl sind natürlich auch Webseiten möglich aber eigentlich nur über die CGI-Schnittstelle.
Widerspruch:
Genauso wie PHP im Apache mit mod_php eingebunden werden kann, kann man mit mod_eperl auch dasselbe mit Perl machen.
Aber man sollte bemerken, das viele Provider aufgrund von Sicherheitsgründen PHP nicht mehr als Modul, sondern auch als CGI ausführen.
»»Die dynamische Erzeugung von Webseiten mit Perl ist auch etwas aufwändiger, bzw. umständlicher und schwieriger zu erlernen als mit PHP. Der
Wieso?
Die Codes von PHP5 unterscheiden sich kaum noch von Perl.
gravierenste Unterschied ist, das PHP und HTML, bzw. Javascript, etc.. in einem Webdokument auf dem Server gemischt werden können und so auch ohne Mehraufwand interpretiert werden. In Perl muß man dagegen i.d.R. (d.h. wenn
Genau dies würde ich nicht als Vorteil erachten -allenfalls bei nicht professionellen Programmen!
Bei IMHO professionellen Programmen gehören Logik und Ausgabelayout streng getrennt. Es muss bei dem Sitebetreiber möglich sein, die Optik einer dynamischen Ausgabe anzupassen ohne das dazu PHP- oder Perlkenntnisse notwendig sind!
Dies ist nur mittels vernünftiger Templates möglich, nicht aber durch eine Vermischung von Code mit HTML-Ausgabe.
Man muss sich halt mal das Szenario vor Augen halten: Was passiert, wenn der Programmierer einer dynamischen Website mal nicht erreichbar ist, aber der Betreiber sein Webdesign neu machen will?
Abgespeichert werden muß das "Programm" mit der Endung .pl oder .cgi
Der Webserver muß natürlich entsprechend konfiguriert sein...
Komisch, meine aktiven Skripten haben alle keine Endung und sehen für den unbedarften daher wie ein Verzeichnisname aus (ein bisl Security by Obscurity) und es geht trotzdem :)
Ciao,
Wolfgang