phpbar.de logo

Mailinglisten-Archive

[php] Vor- und Nachteile von PHP

[php] Vor- und Nachteile von PHP

Jens Benecke jens_(at)_pinguin.conetix.de
Thu, 20 Apr 2000 15:49:52 +0200


On Thu, Apr 20, 2000 at 02:38:22PM +0200, Thomas Weinert wrote:

> Eine kleine aber für mich nicht unwichtige Ergänzung gegenüber Perl
 
> Zugriffsrechte - nur Leserechte notwendig

das "x" fehlt, meinst Du? Ist für mich bisher kein Problem gewesen. Eher
schon, die Admins davon zu überzeugen, mod_perl zu installieren. =;()

> Umbruch - Perl-Script in einem Windowseditor bearbieten vieleicht direkt
> über Samba und schon geht nix mehr weil der umbruch hinter dem
> Interpreter nicht mehr hinhaut.  oder Notepad zeigt halt lauter Kästchen

Stimmt.  Da ich aber unter Windows nie entwickelt habe (und es auch nicht
vorhabe), war das für mich bisher nie ein Problem. 

> Parameterabfrage - Es ist in Perl einfach ein Kreuz immer alle Parameter
> aueinanderzunehmen und dann noch zwischen Get und Post zu unterschieden.
> Nicht in großen Scripten aber in einem kleinen schnell gebautem.

Falsch. Das macht alles CGI.pm für Dich. Du mußt halt bloß POST-Parameter
als "param('name')" statt direkt $name benutzen, aber das ist ja wohl nicht
das Problem.

	use CGI;
	use CGI::carp qw/:fatalsToBrowser/; # = quasi error.log -> browser
	use CGI::Pretty; # sinnvolle Zeilenumbrüche und Indenting einfügen
	
	echo header(), start_html();
	if(param('passwd') == "geheim") {
		echo h1("Passwort korrekt");
	} else {
		echo h1("Passwort eingeben"),
	     	start_form(), textfield(-name=>'passwd', -maxlength=>20),
	     	submit(),
	     	end_form();
	}
	echo end_html();

Was mir bei Perl besser gefallen hat:

a) eingebaute HTML-Prozeduren.
   Statt "<h1>...</h1>" kannst Du (mußtest nicht!) 'h1("...");'
   schreiben, was weitaus weniger fehleranfällig ist. (es sucht sich
   leichter nach fehlenden Klammerebenen als nach fehlenden HTML-Tags!)

b) Persistenz.
   Du brauchst Dich nie darum kümmern, daß deine ganzen POST-Variablen
   von einem Skript zum anderen weitergetragen werden. Perl (bzw. CGI.pm)
   hat gegebenenfalls lauter "<input type=hidden...>" Objekte mit in die
   HTML FORM eingebaut, damit Du keine Variablen verlierst. Bei PHP sehe
   ich mich ständig manuell hidden-felder einfügen oder kranke Sachen wie

   	<form action="next.php3?id=<?echo$id;?>&bla=<?echo$bla;?>&...">

   zu konstruieren, damit alles bisher aufgenommene weitergetragen wird.

c) Irgendwie bin ich mit den regexps von Perl besser zurechtgekommen,
   obwohl die von PHP ja _eigentlich_ ziemlich ähnlich sein sollen. Naja,
   wahrscheinlich vermisse ich einfach die "hacker-style" syntax von Perl.
   :-)
 
> Diese Sachen machen vor allem die Entwicklung kleiner Scripte für
> dynamische Navigation oder ähnliches viel einfacher.

Beide haben so ihre Vorteile. Für Kleinigkeiten nehm ich Perl lieber, für
größere Projekte verlier ich bei Perl zu schnell den Überblick. Das kann
aber auch an meinem Codestil liegen :)


-- 
ciao, Jens                                   http://www.pinguin.conetix.de
jbenecke_(at)_web.de                                  http://www.hitch-hiker.de
jens_(at)_pinguin.conetix.de				   http://www.linuxhelp.de 
cgiservice_(at)_pinguin.conetix.de                       http://www.linuxfaq.de


php::bar PHP Wiki   -   Listenarchive