La verdad que lo que dice
danimera es acertado aunque yo te aclararía que PHP está muy lejos de ser un lenguaje con baja seguridad. De hecho de los que nombraste es técnicamente (hablando de diagramación de estructura) el más seguro, ni Java ni Perl lo son como PHP. El dilema está en que generalmente son mal programados y ya que la idea subyacente era brindarle facilidad de programación y alto desempeño, es lo que lleva a cometer los errores, por ejemplo el usar
register_globals activos, pero de hecho ha tratado de solucionar a través del lenguaje "problemas" de seguridad en los servidores, algo que hasta ellos admiten que no es apropiado pero es una solución ante nada, ejemplo de esto es la posibilidad de limitar el acceso de PHP en ciertas carpetas. También puede escapar caracteres "peligrosos" tanto en GET, POST y
cookies. Es más: otra ventaja es la ejecución, como PHP se carga generalmente como módulo de apache, es muchísimo más veloz que Perl ejecutado como interprete, obviamente las cifras se aproximan y hasta las mejora Perl si es cargado como módulo con mod_perl.
En mi opinión, si manejas HTML, empezaría con PHP, porque tiene la característica de muchos lenguajes. De hecho, PHP, en sus comienzos era un
script en Perl y unas librerías en C, lo que llevo a que sus funciones sean muy similares a estos, es más, utiliza funciones conocidas en Perl, C y Java, es una conjunción, aparte soporta array multidimensionales y otras cosas que hacen muy, pero muy sencilla su programación.
Siempre en este caso hablamos de programación web, aunque hay que tener en cuenta que lo que asegura... limita... ya que PHP, posee una estructura muy rígida y hay cosas que no se pueden hacer directamente, por ejemplo acceder a esas carpetas que fueron limitadas
(saltea este comentario, aclaro que en realidad ese bloqueo se puede quitar, siempre y cuando no hallan limitado el acceso a cambiar este límite), en este caso una forma de acceder es con Perl o Java
.
Lo mejor en mi opinión es que aprendes un lenguaje que te permite aprender otros, tiene muy buena documentación en el idioma que se te ocurra.. va no en tantos
Tal vez en lo que, ojo, en mi opinión no es de lo mejor es utilizar Perl para aplicaciones de escritorios, de hecho es mucho mejor utilizar Java para esto ya que te da una portabilidad única, aunque odio Java y prefiero C o Delphi para estas cuestiones... Paradójicamente sí he hecho y tengo funcionando aplicaciones de escritorio en Perl
, cosas de la vida... y lo que son las cosas también se pueden hacer en PHP.
Bueno, después de estas idas y venidas que la idea era darte un panorama de todo y explayando más en temas que tocaron muy brevemente, te aproximo mi opinión.
PHP es un lenguaje, fácil de aprender, que te inicia para otros, con una potencialidad marcada, pero muy estructurado.
Perl en contraposición no es estructurado (tomándolo como sinónimo de limitado...) en la versión 5+ sobretodo, te da la posibilidad de hacer un 95% de cosas, es ideal para hacer aquel programa rápido para administrar cosas o cuando necesitas expresiones regulares complejas que es el rey en eso, en realidad te vas a dar cuenta que lo necesitas cuando PHP te quede chico (que es sinónimo de miles de líneas que las podes hacer con una o dos en Perl).
Ojo con esto último, en principio para web "simples" las vas a desarrollar en PHP con muchos menos líneas.
Aparte de todo esto, súmale lo que dicen todo los mensajes anteriores en su beneficio.
Java... Java un lenguaje que odio, pero es inevitable recurrir a él cuando se necesitan conexiones persistentes, aunque Flash actualmente también las soporta Java ha sido y es líder en eso, por su parte la principal ventaja es que cualquier programa compilado de Java se puede usar en cualquier sistema operativo, su aprendizajes es más tedioso que Perl y C, es algo así como aprender Delphi, y es el principal lenguaje de los teléfonos actuales aunque hay que tener unas API específicas... ¡Ah! también es el mejor en manejos 3D así muy buenas API sobre eso.
Como verás y si llegaste hasta acá tienes que tener en cuenta que cada lenguaje es una herramienta y como para ser carpintero necesitas un serrucho y no un corta hierro, para programar necesitas el lenguaje según lo que quieras hacer.
Saludos espero que te ayude.