¿Cuáles son los beneficios de PHP? [cerrado]

14

Todo el mundo sabe que las personas que tienen prejuicios contra ciertos lenguajes de programación. Especialmente PHP parece sufrir problemas de su pasado y algunas otras cosas (como tipos sueltos) y a menudo se le llama un lenguaje de programación no serio que no debe usarse para aplicaciones profesionales.

En ese caso especial PHP: ¿Cómo argumenta utilizar PHP como su lenguaje de programación elegido para aplicaciones web? ¿Cuáles son los beneficios, dónde es PHP mejor que ColdFusion, Java, etc.?

cumbre
fuente
55
PHP es un enfoque regionalizado, mínimamente invasivo para el tratamiento del cáncer que actualmente se encuentra en fase II y fase III de pruebas clínicas. PHP también puede ayudar a comprender mejor las colisiones hash. Los organizadores del proyecto PHP también ayudan a varias agencias de aplicación de la ley a combatir los delitos de envío masivo no solicitados privados y comerciales y el trabajo general para ayudar a reducir la cantidad de spam que se envía y recibe en Internet. PHP ofrece grupos de apoyo en varias docenas de ubicaciones en Massachusetts. PHP es un tipo de programa utilizado para tratar enfermedades mentales y abuso de sustancias. PHP está en Layer 3 MPLS VPN (RFC2547).
Trabajo
Cada idioma tiene sus enemigos / admiradores. No diría que PHP es especialmente odiado en comparación con otros lenguajes. De hecho, diría que cuanto más admira un idioma, más odia. Estoy seguro de que podríamos codificar que: (admirers lang X/haters lang X) = AcmeConstant . AgeFactor(Lang X Age). Donde AcmeContant no cambia para todos los idiomas <(;-)
Martin York
1
Utilizo php para demostrarle a la gente cómo no diseñar lenguajes.
dan_waterworth

Respuestas:

13

Josh K ha señalado algunos puntos bastante buenos , así que no lo reiteraré. En cambio, agregaré un poco más.

Es interpretado

Simplemente FTP / SSH en su cuenta, cambiar las cosas necesita ser cambiado y listo! No es necesario compilar, desplegar, reiniciar el servidor.

Por supuesto, esto es algo convincente para las personas que trabajan en un entorno de desarrollo no formalizado, sin control de versiones, pruebas automatizadas, compilaciones automatizadas, etc.

De hecho es fácil

Seriamente. Al menos para el verdadero principiante es realmente fácil. Tan fácil que cuando mi primo expresó interés en aprender a programar, le compré un libro de Python. Las convenciones de PHP pueden enseñarle algunos malos hábitos.

Es capaz

Tengo una enemistad mutua de por vida con los lenguajes C / C ++. De alguna manera no nos queremos. Mientras estaba en la universidad, cuando tenía que hacer proyectos que involucraban cálculos, elegía PHP sobre C ++ y en cada caso podía lograr lo que pretendía. Quizás la ejecución del programa fue de hecho más lenta que si estuviera escrita en C ++, pero no fue un factor en este caso.

De todos modos: redes neuronales, algoritmos genéticos, lógica difusa ... Hice todo esto en PHP. Sí ... la gente me había estado diciendo que era raro.

Mchl
fuente
+1 para interpretado y capaz. Una cosa que siempre me molestó al hacer trabajo web con Java es la necesidad constante de recompilar e implementar. Usar algo como Grails alivia algo de esto, pero no es tan bueno como PHP.
Josh K
Interpretado y capaz es realmente un buen argumento. +1 Todas las respuestas fueron buenas y dieron buenos argumentos, pero las suyas lo resumen bastante bien.
acme
Basta con mirar este código para tratar con números enteros de 64 bits: mysqlperformanceblog.com/2007/03/27/… ¿En serio lo llama fácil?
ThomasX
No, no lo hago. Tenga en cuenta que escribí: 'Al menos para el verdadero principiante es realmente fácil'. Los principiantes reales generalmente no necesitan molestarse con la portabilidad entre plataformas (si es algo bueno, esa es otra pregunta). Consejo general: si espera lidiar con enteros grandes en PHP, use la extensión BCMath (y sí, sé que esta no es la mejor solución que podría haber ... pero así es PHP;))
Mchl
17

Esto es algo en lo que no todos van a estar de acuerdo, pero creo que otra razón por la que PHP es tan popular es porque es fácil obtener una cuenta de hosting gratuita.

Muchos estudiantes jóvenes que desean ingresar al desarrollo web eligen PHP porque configurar un servidor en línea no les costará nada y, por lo tanto, pueden jugar con él / aprender sobre él de forma gratuita.

Aunque hay opciones de alojamiento gratuitas para otros idiomas (java, ruby, .net), son mucho más difíciles de encontrar.

mrwooster
fuente
El costo es definitivamente un factor importante en el uso generalizado.
Orbling
14

Templar

PHP tiene plantillas incorporadas, sin etiquetas extrañas, análisis o gastos generales. A algunos les gusta esto, a otros no.

Portátil

PHP se puede ejecutar para casi todos los servidores y la mayoría de las plataformas. De hecho, se ejecuta en la mayoría de los servidores. Puede ejecutarlo bajo IIS, Apache, Nginx, etc. Esto significa que tiene una portabilidad de escritura una vez, ejecutar en cualquier lugar. Esta portabilidad viene con algunas restricciones, dependiendo de la configuración del entorno que tenga que soportar. Esto diferirá entre aplicaciones comerciales y aplicaciones de código abierto / ampliamente difundidas.

Popular

PHP tiene una gran comunidad y sigue creciendo. Esta comunidad es el resultado de la gran popularidad de PHP. Tiene listas de correo muy activas, foros de discusión y una gran cantidad de personas que pueden responder preguntas durante el desarrollo.

Costo

PHP en sí mismo es gratuito, y la mayoría de los elementos con los que trabaja fuera de la caja (Apache, PostgreSQL, MySQL) son gratuitos. Esto le da a su proyecto un umbral de costo inicial muy bajo.

Josh K
fuente
Realmente no diría que la portabilidad era un punto fuerte de PHP. Si realmente desea escribir PHP portátil, debe evitar el hecho de que el lenguaje se puede configurar de muchas maneras diferentes, por ejemplo, debe verificar la opción de configuración para las comillas mágicas y ejecutarlo stripslashes()porque algunos tienen la opción de configuración activada y otros no 't.
Jim
2
@ Jim - Eso es mucho más portátil que la mayoría de las cosas.
Orbling
@Orbling - ¿En serio? ¿En qué características similares de otros idiomas estás pensando?
Jim
1
@ Jim: escribo código que espera un entorno de "mejores prácticas". Si yo estaba haciendo un proyecto de sistema operativo que obligaría a una serie de opciones / ajustes (por ejemplo, magic_quotes_gpcla vuelta fuera ). La mejor manera de lidiar con esto (si fuera necesario) sería encapsular estos bloques de procesamiento if / else en funciones auxiliares, lo que eliminaría la necesidad de alinear las citas con el código de su aplicación.
Josh K el
1
@Josh: haría lo mismo que usted si todavía escribiera PHP en grandes cantidades en estos días, pero si su código depende de un entorno de "mejores prácticas", no es portátil. Específicamente, tendrá errores de corrupción de datos en muchos hosts malos a medida que se agregan barras diagonales falsas a todos los datos proporcionados por el usuario. Dado que la ubicuidad del alojamiento PHP se considera una de las principales ventajas de usar PHP, creo que es justo tener en cuenta a todos esos hosts malos. Las funciones de ayuda que describe son la forma típica de tratarlo, pero esa es una solución para un problema de portabilidad.
Jim
5

PHP está en todas partes. No importa qué webhost extraño y loco tenga, es muy poco probable que no tenga PHP instalado en él. Esto significa que si está escribiendo una aplicación web que tiene que ejecutarse en los servidores de otras personas, siempre puede depender de un conjunto de características PHP (clases PHP 4/5 y las extensiones predeterminadas) y aumentar la base de usuarios al tiempo que disminuye el soporte.

David Kendal
fuente
5

Disponibilidad Casi todos los servidores web lo admiten.

Velocidad de desarrollo Todo lo que necesita es un editor de texto, no requiere compilación

Fácil de configurar Incluso si no está instalado, es fácil de instalar, incluso viene preempacado con servidores LAMP / WAMP

Documentación Hay toneladas de ejemplos, grupos de apoyo, libros, etc.

picos salvajes
fuente
1

Algunas ventajas de PHP:

  • Manejo de carga de entrada de archivo incorporado
  • Manejo integrado de datos de GET, POST y COOKIES
  • Gestión de sesión incorporada
  • Rápido de escribir
  • Fácil de mezclar código y HTML (nota: esto también se ve como una desventaja)

Ahora, también tiene varias desventajas evidentes:

  • Ningún concepto de variables locales ... las variables son globales o de ámbito de función. Esto te quemará en algún momento, especialmente si estás usando bucles.
  • Las variables globales no están disponibles en el alcance de la función a menos que las solicite específicamente con la globalpalabra clave.
  • El entorno de programación cambia según php.ini. Esto incluye cambios en el comportamiento de las funciones específicas y construido en arrays (por ejemplo, $_GETy $_POSTlos valores de los cambios basados en el magic_quotes_gpcajuste)
Powerlord
fuente
1
Nadie en su sano juicio seguiría magic_quotes_gpcencendido. En primer lugar, cuestiono la cordura de la persona que agregó esa hinchazón sin valor al motor.
Josh K
1
"Las variables globales no están disponibles en el alcance de la función a menos que las solicite específicamente". Realmente no veo cómo eso es una desventaja. Hay idiomas que lo hacen de esta manera, hay otros que no.
Mchl
1
@Mchl: La mayoría de los idiomas no hacen esto, y es un problema definitivo si no lo sabes. Fuera de mi cabeza, TCL es el único otro idioma que he usado que hace esto.
Powerlord
1
@Josh K: El servidor primario de mi compañía anterior todavía lo tiene activado, ya que al programador principal antes que a mí me gustó, y como tal, la mayoría del antiguo código PHP flotante dependía de él. No hay tiempo para recodificar cientos de sitios web. : - /
Orbling
1
@Mchl: Ada tiende a acostumbrarse donde las fallas resultarían en muerte, mucha muerte. adaic.org/advantages/projects
Orbling
1

Creo que a algunas personas no les gusta PHP porque puedes usarlo de la manera que más te guste / te parezca. Debido a que todo el mundo puede usarlo de manera muy fácil, hay muchos códigos basura en el mundo. Algunos programadores que nunca han hecho PHP real allí pueden pensarlo de la forma en que trabajas con PHP. Y a algunas personas no les gusta PHP porque les gusta algo más y tienen miedo de cosas nuevas más o menos.

Personalmente me gusta PHP porque puedo ejecutarlo en casi cualquier lugar. Puede obtener mucha ayuda en la web y es gratis. También hay algunos buenos marcos como el Marco Zend. Pero la mayoría de la gente no puede llegar a la cabeza.

Pimmetje
fuente