PHP es un lenguaje de programación dirigido a la creación de páginas web dinámicas, es decir aquellas que se generan a partir de lo que un usuario introduce mediante un formulario u otra aplicación o fichero.
No es un lenguaje de programación orientado a objetos, sino que es procedural.
PHP es código que se inserta dentro del propio código HTML por ejemplo:
<HEAD>
<TITLE>Ejemplo 1</TITLE>
</HEAD>
<BODY>
<?
echo "Hola, este es mi primer script en PHP!";
?>
</BODY>
</HTML>
A principios de los años 90 Tim Berners-Lee estableció las bases de la World Wide Web cuando desarrolló, mientras trabajaba en el CERN, el primer servidor web (CERN httpd) y el primer navegador de la historia (WorldWideWeb, más tarde rebautizado como Nexus). Durante los primeros meses, la web consistió en una pequeña gran colección de documentos estáticos escritos en HTML, pero no pasó mucho tiempo antes de que Robert McCool y su equipo del NCSA pensaran en la posibilidad de poder responder a las peticiones del navegador con el resultado de la ejecución de pequeños programas, permitiendo así al servidor web una mayor interacción con el usuario.
Así nació en 1993 CGI (Common Gateway Interface), como parte del servidor NCSA HTTPd, que más tarde daría origen al famoso Apache. Esta tecnología, que aún se utiliza ampliamente en los servidores web debido a su sencillez, definía una interfaz común mediante la cuál el servidor web, y por tanto el cliente, podía comunicarse con un programa situado en el servidor, utilizando para ello variables de entorno predefinidas, argumentos de línea de comandos, y la entrada y salida estándar. La mayoría de estos programas estaban escritos en C o en Perl.
En aquellos años, las páginas web solían ser documentos de texto guardados en algún directorio de un servidor y a los que se podía acceder mediante los primeros navegadores web. Cada página web que se veía en el navegador correspondía a un fichero en el servidor.
Este esquema de funcionamiento es suficiente para sitios web pequeños creados por una sola persona, pero en cuanto un sitio web empieza a crecer, empiezan a surgir los problemas. Por ejemplo:
* si el sitio contiene muchas páginas es necesario crear menús que permitan orientarse por el sitio. Como cada página debe contener el menú, cualquier cambio en el menú obliga a modificar todas las páginas.
* si el sitio modifica a menudo su contenido (por ejemplo, la web de un periódico), tener que editar manualmente los ficheros ralentiza el proceso.
* si el sitio es creado por varias personas, cualquiera puede modificar por error los ficheros de otras personas y si varias personas quieren modificar el mismo fichero se pueden producir conflictos.
* si se quiere permitir la participación del público (foros, comentarios en blogs, etc), esta participación depende de que uno de los autores modifique los ficheros, lo que ralentiza el proceso.
* si personas sin conocimientos técnicos quieren participar en la creación del sitio, pueden cometer errores editando los ficheros.
La solución es que las páginas no sean ficheros estáticos guardados en el disco, sino que se generen cuando el usuario las solicite.
Por ejemplo, para resolver el problema de los menús comentado anteriormente, una solución sería que el menú estuviera en un fichero aparte y cuando el usuario solicitara una página, el menú se añadiera al principio de cada página (nota: no me refiero a la composición de páginas mediante frames, una solución desaconsejada hace muchos años, sino a componer un único fichero a partir de varios).
Esa generación de las páginas se puede hacer de varias maneras. Una de ellas es recurrir a lenguajes de programación generales o específicos (como PHP). Desde sus inicios, los servidores web permiten recurrir a lenguajes de programación para generar las páginas web.
No hay comentarios:
Publicar un comentario