Det kan bli svårt att hitta något om PHP vs. Perl eftersom många är blandmissbrukare, dvs. de gillar både Perl och PHP.
Jag ska kasta mig ut och leta efter referenser, men passar först på att lista mina egna tankar i ämnet.
PHP
_____________________
PHP är mycket kraftfullt och förhållandevis lättanvänt. Hanteringen av arrayer och listor ör betydligt mer kraftfull än i ASP/VBScript (man bör alltid komma ihåg att ASP kan köra JScript och Perlscript också), och dessutom innehåller PHP ofantliga mängder med funktioner, för bl.a. mail, LDAP, etc., som i andra miljöer måste läggas/köpas till.
Med nya Zend-motorn och PHP-kompilatorn är dessutom PHP ett riktigt högprestanda-alternativ.
Övriga "finesser" är ett visst mått av plattformsoberoende, en snabb utvecklingstakt, möjlighet till dynamiska includes etc.
Perl
_____________
Perl är utan tvekan det mest kraftfulla språket av de tre, men det är också mest komplext. Det finns inte mycket som inte går att göra i Perl, men för rena webbapplikationer kan det ibland vara lite overkill. Normalt exekveras Perl-program som CGI-skript, vilket sänker perstanda och slukar minne, men man kan även använda mod_perl (och motsvarande för IIS) så att varje anrop tilldelas den globala Perl-processen och dess trådar.
Det är också vanligast att man skriver kompletta Perl-program, som spottar ur sig HTML, men för den som vill inkludera Perl i HTML-koden (som i PHP och ASP) finns olika embedding-lösningar.
Databasanrop etc. är inte svårt i Perl, men det är svårare än i PHP och ASP.
ASP
_____________
ASP är på inget sätt en dålig teknik, vilket ju bevisas av dess popularitet, och den digra mängd dokumentation som finns i ämnet. Just mängden information är kanske den största fördelen med ASP, och det är alltid nära till hjälpen, när man stöter på problem (PHP är också relativt bra på denna punkt).
Vidare finns en mängd trevliga tilläggsmoduler (COM-objekt) som gör ASP mycket kraftfullt, och man kan också skriva sina egna. Visserligen finns/kommer COM-stöd till Perl respektive PHP, men det är långt ifrån alla COM-objekt för ASP som kommer att funka i dessa miljöer.
CGI
______________
CGI har inte i jämförelsen att göra, eftersom det inte är ett språk eller en utvecklingsmiljö, utan bara en standard för hur applikationer ska exekveras på en server vid HTTP-anrop, samt hur data från webbklienten ska refereras i programmen. Såväl PHP och Perl som ASP utnyttjar CGI-standardens variabeldefinitioner, men då PHP, ASP och mod_perl inte startar nya processer vid varje anrop säger man att de inte är CGI-program.
I själva verket är detta en definition som grundar sig i att starta-nya-processer-exekvering var det enda intressanta då man lade grunden till CGI-standarden.
Jag tycker om och använder såväl Perl och PHP som ASP, huvudsakligen beroende på vilken servermiljö som är aktuell, men har sedan en tid tillbaka slutat att använda Perl för webbapplikationer. PHP är definitivt det mest kraftfulla alternativet, men jag gillar även ASP, mycket för möjligheten att göra egna COM-objekt.
------------------
----------------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
Norrköping
ASP/VB/Perl/PHP/Tango
