Está en la página 1de 16

RPG-II-II Programacin PHP UNIDAD I Instalacin y configuracin del entorno de trabajo en PHP.

Santo Domingo, D.N. Agosto de 2013

Jimmy Rosario Bernard

Qu es PHP
PHP es un lenguaje de programacin dirigido a la creacin de pginas web dinmicas. Es un lenguaje de programacin procedural con una sintaxis similar a la del lenguaje C, aunque actualmente puede utilizarse una sintaxis de programacin orientada a objetos similar a la de Java. En esta pgina se tratan los temas siguientes: Pginas, web, lenguajes de programacin y bases de datos La World Wide Web (o simplemente, la web) fue ideada por Tim Berners Lee en 1990, empez a funcionar en el CERN en 1991 y se extendi rpidamente por las Universidades del mundo (en aquel entonces Internet era una red a la que slo tenan acceso entidades gubernamentales, particularmente entidades educativas). En 1992 algunos proveedores comerciales empezaron a dar acceso a particulares y empresas, lo que populariz todava ms la web. En aquellos aos, las pginas web solan ser documentos de texto guardados en algn directorio de un servidor y a los que se poda acceder mediante los primeros navegadores web. Cada pgina web que se vea en el navegador corresponda a un fichero en el servidor. La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:

El usuario escribe la direccin de la pgina web en su navegador El navegador la solicita al servidor web correspondiente (este paso requiere la participacin de mquinas intermedias que no se comentan aqu) El servidor lee el fichero que corresponde a esa pgina web El servidor enva el fichero al navegador El navegador muestra la pgina web al usuario

Este esquema de funcionamiento es suficiente para sitios web pequeos 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 pginas es necesario crear mens que permitan orientarse por el sitio. Como cada pgina debe contener el men, cualquier cambio en el men obliga a modificar todas las pginas. si el sitio modifica a menudo su contenido (por ejemplo, la web de un peridico), 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 participacin del pblico (foros, comentarios en blogs, etc), esta participacin depende de que uno de los autores modifique los ficheros, lo que ralentiza el proceso. si personas sin conocimientos tcnicos quieren participar en la creacin del sitio, pueden cometer errores editando los ficheros.

La solucin es que las pginas no sean ficheros estticos guardados en el disco, sino que se generen cuando el usuario las solicite. Por ejemplo, para resolver el problema de los mens comentado anteriormente, una solucin sera que el men estuviera en un fichero aparte y cuando el usuario solicitara una pgina, el men se aadiera al principio de cada pgina (nota: no me refiero a la composicin de pginas mediante frames, una solucin desaconsejada hace muchos aos, sino a componer un nico fichero a partir de varios). Esa generacin de las pginas se puede hacer de varias maneras. Una de ellas es recurrir a lenguajes de programacin generales o especficos (como PHP). Desde sus inicios, los servidores web permiten recurrir a lenguajes de programacin para generar las pginas web. La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:

El usuario escribe la direccin de la pgina web en su navegador El navegador la solicita al servidor web correspondiente (este paso requiere la participacin de mquinas intermedias que no se comentan aqu) El servidor detecta que no es un documento ya existente sino que tiene que generarse, as que recurre al intrprete del lenguaje El intrprete del lenguaje ejecuta el programa y la salida del programa se enva al servidor El servidor enva el fichero al navegador El navegador muestra la pgina web al usuario

Es importante sealar que al usuario le resulta indiferente que la pgina estuviera guardada en el disco duro o que se haya generado en ese momento, de la misma manera que le resulta indiferente el lenguaje de programacin que haya generado el documento. El navegador recibe el documento en ambos un documento de texto que contiene etiquetas html y lo muestra al usuario. A veces, el usuario puede suponer que la pgina que se le est sirviendo se ha generado mediante PHP ya que la direccin de la pgina termina por .php en vez del habitual .html, aunque no se puede estar seguro de que sea realmente as. Pero el uso de lenguajes de programacin no suele ser suficiente. Si la informacin est diseminada en multitud de trozos para organizar y acceder fcilmente a toda esa informacin, es conveniente utilizar algn sistema gestor de bases de datos. Existen muchos sistemas gestores de bases de datos y cualquier lenguaje de programacin puede conectarse a ellas y realizar consultas. La imagen siguiente ilustra de forma simplificada el esquema de funcionamiento:

El usuario escribe la direccin de la pgina web en su navegador El navegador la solicita al servidor web correspondiente (este paso requiere la participacin de mquinas intermedias que no se comentan aqu) El servidor detecta que no es un documento ya existente sino que tiene que generarse, as que recurre al intrprete del lenguaje El intrprete del lenguaje ejecuta el programa, que requiere ejecutar consultas al sistema gestor de bases de datos y la salida del programa se enva al servidor El servidor enva el fichero al navegador El navegador muestra la pgina web al usuario

Como antes, al usuario le resulta indiferente que se haya accedido o no a un sistema gestor de bases de datos. El navegador recibe el documento en ambos un documento de texto que contiene etiquetas html y lo muestra al usuario.

Historia de PHP Es importante sealar que la evolucin de PHP es diferente a la de otros lenguajes de programacin. No hay ningn organismo encargado de la definicin del lenguaje PHP (y empresas que implementan esa definicin en diferentes compiladores o intrpretes), sino que el lenguaje evoluciona a la vez que lo hace el intrprete "oficial" de PHP publicado desde la versin 4 por la empresa Zend. Existen otros motores, como HipHop creado por Facebook, pero son minoritarios. Aunque el lenguaje y el intrprete son cosas conceptualmente distintas, es habitual referirse a ambos como PHP. PHP (el intrprete) ha sido publicado siempre como software libre, con una licencia llamada licencia PHP. Esta licencia es una licencia libre sin copyleft. Como la licencia impone restricciones al uso del trmino PHP en productos derivados, esta licenica es incompatible con la licencia GPL, por lo que la Free Software Foundation recomienda que slo se utilice para programar extensiones del propio PHP. PHP fue creado por Rasmus Lerdorf en 1995. El nombre PHP significaba entonces Personal Home Page y haca referencia a que era un lenguaje diseado para facilitar la generacin de pginas web, en primer lugar en el sitio web personal de Rasmus Lerdorf y rpidamente en muchos sitios. Desde entonces, PHP no ha dejado de evolucionar, proporcionando nuevas caractersticas.

En noviembre de 1997 Rasmus Lerdorf public una segunda versin del lenguaje, PHP 2. En junio de 1998 se public PHP 3. Esta versin fue creada por Zeev Suraski y Andi Gutmans, que desde entonces dirigen el desarrollo de PHP (con la colaboracin de Lerdorf). A partir de esta versin PHP significa PHP: Hypertext Preprocessor (aadiendose a la lista de acrnimos recursivos como GNU, Lame, Wine, RPM, etc.). La caracterstica ms decisiva de esta versin fue la mejora de la la extensibilidad del lenguaje, permitiendo que muchos programadores aportaran nuevos mdulos, pero esta versin tambin simplific la sintaxis del lenguaje e introdujo la posibilidad de utilizar una sintaxis orientada a objetos. En 1999 Zeev Surski y Andi Gutmans crearon la empresa Zend Technologies, que desarrolla productos basados en PHP (servidores, editores, etc.). En mayo de 2000 se public PHP 4, que inclua un nuevo motor llamado Zend Engine. Esta versin era bastante ms rpida que la anterior y aade nuevas caractersticas como las sesiones. En julio de 2004 se public PHP 5, que inclua un nuevo motor llamado Zend Engine 2. La caracterstica ms importante de esta versin es la mejora de la programacin orientada a objetos. La siguiente versin prevista, que se tendra que publicar como PHP 6, se fij el objetivo de dar a PHP soporte completo de Unicode, el juego de caracteres universal. Pero ese objetivo ha resultado ser mucho ms difcil de conseguir de lo esperado y en 2010 prcticamente se tir la toalla y sigue sin estar claro si se alcanzar el objetivo. Mientras tanto se han publicado versiones importantes como PHP 5.3, publicada en junio de 2009. Desde sus inicios, PHP ha sido posiblemente el lenguaje ms utilizado en entornos de desarrollo web, y desde 2001 est situado en el Top 10 del ndice Tiobe de lenguajes de programacin. Para construir sitios web profesionales y no tener que escribir todo desde cero, se suelen utilizar frameworks de programacin o, incluso si no se quiere programar, se suelen utilizar CMS (Content Management System,

Sistema de gestin de contenidos). Muchos de los frameworks y CMS ms populares estn escritos en PHP. Aspectos de PHP Como es de suponer al ingresar al mundo de un lenguaje de programacin es importante conocer por lo menos el ambiente bsico necesario para poder realizar los desarrollos que da a da irn siendo mas complejos dependiendo de la emotividad que tenga la persona que quiere profundizar en el mundo del desarrollo. As como para poder compilar un programa en C o C++ necesita como mnimo un compilador del lenguaje, y que para trabajar con .net es necesario el frameworks, as mismo para poder ejecutar el programa o script de PHP es necesario tener unas aplicaciones bsicas para poder probar lo que vamos haciendo en el curso. Entrando en materia y haciendo nfasis de lo tratado en el actual capitulo, es necesario anotar que dependiendo del sistema operativo en el cual se va a instalar el ambiente se debe seguir un procedimiento diferente, debido a la arquitectura de cada sistema operativo. En este curso procedemos a trabajar en un ambiente de desarrollo instalado sobre sistema operativo windows, aunque si las personas que lo sigan desean que se agregue un tutorial independiente para la instalacin del ambiente en otro sistema operativo, as se har. Captulo 2: Obtener el paquete XAMPP Para poder montar un ambiente de desarrollo para PHP es necesario tener instalado un servidor web y el interprete de PHP, esta tarea la podemos hacer de forma manual, pero como el objetivo de este curso es programar en PHP y no administracin de servidores, realizaremos la tarea mas sencilla, la cual ser instalar un paquete que ya este pre configurado.

Este tipo de ambientes suelen tener un acrnimo el cual termina en AMP y su variante principal es el sistema operativo en el cual esta instalado as que normalmente se conocen principalmente tres tipos de ambientes comunes, no quiere decir que son los nicos, los tres ambientes en mencin son :

WAMP = Windows, Apache, MySql, PHP LAMP = Linux, Apache, MySql, PHP MAMP = Macintosh, Apache, MySql, PHP

Para este casi vamos a instalar un paquete WAMP el cual descargaremos del siguiente link si el sistema operativo es de 32 Bits o este link si el sistema operativo es de 64 Bits. Como el titulo lo indica se iba a hacer el tutorial con XAMPP, que es un paquete igual al que vamos a trabajar, pero por razones personales, prefer descargar el WAMP y hacer el tutorial con este, sin embargo para los que quieran hacerlo con XAMPP. Captulo 3: Instalar el paquete XAMPP A continuacin se vern los pantallazos de la instalacin con su explicacin cada uno, inicialmente sern los de WAMP y luego los de XAMPP. Instalacin WAMP 1. En este paso vemos la primer pantalla que nos muestra el ejecutable en el cual nos dan una introduccin y un resumen de las herramientas que se van a instalar.

2. En este paso se muestra el acuerdo de licencia, a lo cual nosotros seleccionamos que aceptamos los trminos y le damos en siguiente.

3. En este paso seleccionamos la ubicacin que vana tener los archivos que se van a instalar, se puede cambiar a conveniencia, pero para efectos del curso y sus ejemplos se manejara la ubicacin por defecto.

4. Este paso no es de mayor relevancia ya que nos indica si queremos que el programa de instalacin nos cree un acceso directo en el escritorio de la aplicacin WAMP que es la que estamos instalando.

5. Antes de empezar la instalacin de los archivos el programa de instalacin nos muestra un resumen de lo que va a hacer y en ese instante le damos clic en instalar para comenzar con la instalacin.

6. Despus de terminada la instalacin de los archivos nos saldr un mensaje que nos preguntara sobre la ubicacin del ejecutable del navegador de su preferencia, sin embargo si usted tiene instalado Firefox en el computador, el sistema le preguntara que si quiere usarlo, dicha pregunta saldr en una ventana como esta.

7. En este paso se configura el correo electrnico por defecto de la Instalacin

8. Por ultimo el programa de instalacin nos muestra un mensaje de finalizacin y nos da la opcin de arrancar o no la aplicacin.

Para probar que el servidor halla quedado bien instalado, abrimos cualquier navegador web dentro del mismo equipo donde se instala WAMP y en la direccin ponemos http://localhost y si todo sali bien tendr que mostrar una pantalla como la siguiente.

Instalacin XAMPP 1. Al ejecutar el archivos descargado el primer paso que vamos a realizar es seleccionar el idioma que se nos va a mostrar en el programa de instalacin.

2. Comienza el programa de instalacin mostrndonos una pantalla de introduccin.

3. Se presenta la pantalla donde podemos seleccionar la ubicacin de la instalacin, la cual recomiendo dejar como viene por defecto.

4. En esta pantalla se nos da la opcin de seleccionar si se quieren instalar los programas como servicios, esto para que los programas arranquen con el sistema operativo, de no ser seleccionados para instalarse como servicios, tendr que arrancar los servidores de forma manual, adems nos da la opcin de instalar un servidor llamado Filezilla, el cual es un servidor FTP con el cual se pueden hacer intercambios de archivos. Al seleccionar los servidores que quiere instalar se da clic al botn de install y se proceder a hacer el copiado de los archivos.

5. Al finalizar la instalacin podemos ver que el programa de instalacin nos presentara un mensaje dicindonos que la instalacin a terminado exitosamente.

6. Por ultimo vamos a http://localhost y veremos una imagen como la siguiente si la instalacin en realidad fue exitosa.

Captulo 4: Apache y MySQL como servicios La aplicacin antes instalada (WAMP) se encarga de instalar el servidor web apache, y el servidor de base de datos Mysql, estos se instalan como servicios del sistema operativo, esto con el fin que sean fcilmente administrables y que adems de ello inicien con el sistema operativo, el paquete WAMP tiene adicional a la interfaz de manipulacin de servicios de windows, una interfaz para poder manipular los servicios instalados, y por medio de esta interfaz nos permite parar, reiniciar o iniciar los servicios, as como cambiar la configuracin de los servidores. Con esto terminamos la primera leccin, y ya tenemos nuestro ambiente de desarrollo para entrar en materia.