Mi servidor web usa PHP al igual que el 76.9% de los servidores web según W3Techs:
http://w3techs.com/technologies/overview/programming_language/all
La razón por la que uso PHP es una inercia nacida de ver a todos los demás usándolo en servidores web. ¿Qué tiene PHP que lo haría tan ubicuo en los servidores web?
(Tenga en cuenta que esta pregunta es similar a la siguiente pero la lleva en una dirección diferente: ¿por qué no se utiliza Java para el desarrollo moderno de aplicaciones web? )
web-development
php
Deets McGeets
fuente
fuente
Respuestas:
PHP es un lenguaje diseñado específicamente para la programación web con integración integrada con la base de datos de código abierto más popular MySQL.
Fácil de comenzar: como principiante, es fácil comenzar con PHP. El usuario solo tiene que agregar algunas etiquetas PHP con, por ejemplo, un bucle for en sus archivos HTML existentes y luego subirlo al servidor y ver el resultado o un mensaje de error. La escritura dinámica y las matrices asociativas también hacen que sea más fácil comenzar a usar PHP.
Fácil de usar: en comparación con la mayoría de las soluciones como, por ejemplo, Java, PHP no necesita compilarse, por lo que es solo para escribir el script y luego subirlo al servidor y luego actualizar el navegador.
Soporte de base de datos integrado: PHP tiene (en su mayoría) soporte incorporado para las bases de datos más populares como, por ejemplo, MySQL, lo que significa que es fácil comenzar a usar bases de datos, no es necesario instalar controladores adicionales, solo para usar las funciones mysql. La herramienta de administración basada en web fácil de usar PHPMyAdmin (lanzada en 1998) también es importante para el éxito de PHP en combinación con MySQL.
Lenguaje antiguo (desde 1995) con una gran base de usuarios: PHP se hizo popular a principios (1995) ya que fue diseñado para la programación web. Desde entonces, la base de usuarios ha crecido y ahora hay muchos marcos y bibliotecas orientados a la web disponibles. Algunos ejemplos son los sistemas blogg y las plataformas de compras electrónicas.
Alojamiento barato: dado que PHP ha existido durante mucho tiempo y funciona bien tanto en Linux como en Windows, y muchos servidores web tienen soporte para ello. No hay problema para encontrar hosting con PHP preinstalado.
fuente
Por la misma razón, MySQL es tan popular: estaba en el lugar correcto en el momento correcto.
Con el auge del servidor Linux en los años 90, la plataforma LAMP (Linux-Apache-MySQL-PHP) apareció como una opción confiable y, lo más importante, gratuita.
Como nota al margen, tome MySQL en el momento. Estas eran dos características faltantes de MySQL (desde el principio de mi mente, podría haber más) no hace mucho tiempo :
¿Cómo llegó a ser tan popular un DB que ni siquiera era ACID (atomicity-consistency-aislamiento-durabilidad)? La misma respuesta que PHP: estaba en el lugar correcto en el momento correcto.
Más información sobre el "lugar correcto en el momento correcto" en los componentes de LAMP:
fuente
Si miras a tu alrededor, la mayoría de las personas que ejecutan PHP en estos días ejecutan Wordpress, Drupal, Joomla y similares. O una de las 10,000 aplicaciones gratuitas y populares que prácticamente funcionan con un host PHP barato y una pequeña configuración. Muchas veces se instala no porque alguien esté haciendo algo que se ejecuta en PHP, sino que la opción más fácil es usar algo construido en PHP.
fuente
Me estoy enseñando PHP ahora mismo, así que tal vez pueda responder.
Un archivo de código fuente PHP puede contener una combinación de HTML, JavaScript y PHP, por lo que parece realmente fácil poner en funcionamiento aplicaciones web simples. Las interacciones más complejas, que requerirían una gran cantidad de Java en una situación JSP, o algunas contorsiones extrañas en una situación CGI-BIN, son atendidas por PHP: ni siquiera tiene que saber si un HTTP GET o POST llamó a su código, todo lo que su código quiere saber vive en _REQUEST o _SERVER o _COOKIE variables globales.
PHP-the-langauage se analiza y ejecuta con bastante rapidez, por lo que no notará una gran caída de rendimiento al generar HTML, en lugar de tener un montón de archivos HTML estáticos.
PHP-the-interpreter tiene llamadas a la biblioteca para casi todos los DBMS de código abierto, y muchos de los propietarios, también, por lo que hacer que una aplicación web de 3 niveles parezca fácil. PHP-the-interpreter incluye llamadas a la biblioteca para muchas otras situaciones comunes (también conocidas como "casos de uso"), por lo que no tiene que escribir mucho código usted mismo, simplemente llame a la biblioteca. Entonces, al igual que las "aplicaciones empresariales" J2EE, el problema pasa de saber cómo codificar a saber cómo buscar cosas de la biblioteca. Esto es ayudado por el muy decente php.net PHP manual.
Como lenguaje de programación, PHP no tiene muchas construcciones exóticas, o difiere demasiado de, por ejemplo, C, FORTRAN 4 o Pascal, por lo que los programadores que ya conocen un idioma pueden aprender fácilmente el lenguaje de programación PHP.
fuente
Hay dos puntos clave para el éxito de PHP: el momento y el enfoque en el alojamiento compartido.
Al principio la web era estática. Los servidores web solo podían distribuir HTML pregenerado, esto obviamente no fue suficiente después de algún tiempo, por lo que en 1993 el equipo de NCSA amplió su servidor web (el predecesor de Apache httpd) con una tecnología llamada CGI que permitía llamar a programas específicos desde el servidor web que podría generar HTML (u otro contenido) sobre la marcha. Esto fue genial ya que la gente podía hacer todas las cosas. Un lenguaje comúnmente utilizado en ese momento para ese propósito era Perl. Perl es un lenguaje fuerte en el procesamiento de texto que es una propiedad clave para manejar datos de solicitud HTTP y producir HTML. Entonces la gente lo usó.
Pero había un problema: para cada solicitud que el servidor web tenía que ejecutar un programa externo, Perl tenía que inicializar y ejecutar el script. Esto causó bastante dolor de cabeza. Una solución fue mod_perl llegando ca. 1997. mod_perl es un módulo para el servidor web Apache que integra el intérprete de Perl directamente en el proceso del servidor web, por lo que no se necesita un inicio adicional.
Pero nuevamente, este enfoque tenía un problema: mod_perl era extremadamente poderoso y tenía acceso a la configuración completa del servidor. No podría usar un servidor para alojar múltiples clientes independientes, ya que podrían dañar fácilmente a otras personas, ya sea a propósito o por accidente. Y ahí es donde llegó PHP.
PHP fue construido de una manera que podría ejecutarse como módulo Apache (por lo tanto, no tener el hit de inicio para cada solicitud) pero proporciona un entorno de nada compartido entre las solicitudes. Una vez que se realizó una solicitud, se perdió toda la información y una solicitud posterior a otro host virtual se atendería de forma independiente. PHP también ofreció funciones para restringir el acceso (safe_mode, open_base_dir). Con esa opción arquitectónica, las empresas podrían instalar PHP en su servidor y proporcionar a los clientes acceso FTP (o similar) para cargar sus archivos y, de ese modo, alojar a muchos clientes en una sola máquina sin mucho trabajo. Esto provocó una competencia que condujo a precios baratos para el alojamiento basado en PHP, lo que hizo de PHP una plataforma ubicua.
Además, PHP tuvo algunos beneficios sobre Perl, como permitir mezclar código HTML y PHP o acceso directo a variables de solicitud (ver también register_globals) que en Perl fue más difícil (análisis personalizado o dependencia de CGI.pm) que les gustó a los desarrolladores.
Otro aspecto que hizo que PHP tuviera éxito en esos días fue un buen soporte en Windows. Conseguir que Perl u otros idiomas funcionaran en Windows fue difícil, pero en ese momento muchos desarrolladores aún no usaban Windows en casa y la virtualización o los contenedores. PHP se ejecutó fácilmente en Windows para que las personas pudieran usarlo para el desarrollo y luego empacar los archivos e implementarlos en Linux. Con Perl, por ejemplo, tendría que obtener la distribución perl correcta y luego verificar qué módulos están disponibles, etc.
¿Qué hay de otros idiomas? Los lenguajes compilados como C o C ++ nunca tuvieron tracción ya que las secuencias de comandos sirven mejor al mercado en rápido desarrollo. Java existía, pero las máquinas virtuales Java requerían muchos más recursos y alojamiento compartido en la forma en que PHP lo soportaba era apenas factible. La inversión en hardware fue mucho mayor. ASP (como predecesor de ASP.Net) estaba vinculado a la plataforma Windows, limitándolo a las organizaciones que ya ejecutan Windows y que no temen los costos de licencia, y nuevamente no cuentan con soporte de alojamiento compartido.
Se produjeron otras tecnologías diferentes, pero fueron comerciales (Cold Fusion o Netscape Server con JavaScript del lado del servidor) limitando su alcance o no desaparecieron hasta que llegó Ruby-on-rails, que probablemente fue el primer entorno que recibió muchos atención, pero en ese momento PHP ya era muy popular entre una gran comunidad y un software bien establecido (como Wordpress o Drupal), lo que dificultaba la competencia, especialmente porque el desarrollo de PHP nunca se detuvo y aún continúa.
fuente
Seamos realistas, PHP es barato, fácil de aprender, tiene una gran comunidad, puede alojarlo en cualquier lugar y ha existido mucho. Entonces, si piensa que alguien usa Internet como una forma de ganar dinero rápidamente en una industria pequeña / mediana y tiene que crear un área de desarrollo para hacerlo con una infraestructura prácticamente inexistente, PHP suena bastante bien (para empezar).
Así que creo que PHP es una excelente manera de ganar dinero rápidamente con un grupo de programadores y una pequeña computadora como servidor.
fuente