martes, 15 de enero de 2008

2. Herramientas recomendadas para trabajar con php

Antes de empezar a trabajar con PHP, considero importante discutir qué entorno necesitamos tener disponible para realizar pruebas y empezar a crear nuestras primeras páginas PHP. Así pues, esta entrada la vamos a dedicar a:
- Obtención de un servidor web con PHP.
- Herramientas recomendables para edición de páginas PHP.

Todas las referencias que hagamos a PHP en el blog han de entenderse sobre la versión 4.x de PHP. La versión 5.x tiene algunos cambios sustanciales (tanto en filosofía de programación como en funciones obsoletas) y no garantizo que los ejemplos funcionen sobre dicha versión.

Vamos a empezar por ver qué necesitamos tener instalado en nuestro equipo si queremos trabajar con PHP. Si recordamos la entrada anterior del blog, PHP es un lenguaje de servidor, podríamos entenderlo como un procesador que recibe un código en PHP y devuelve una página HTML plana (entendiendo por “plana” que la visualización de dicha página es inmutable, siempre vas a ver el mismo aspecto y contenido dentro de la página). Así pues, nuestro equipo necesitará tener instalado un procesador de dicho lenguaje de servidor.

Existen, básicamente, dos opciones:
1) Instalar en tu equipo un servidor web de internet que “comprenda” PHP.
2) Abrirte una cuenta en un servidor de internet que permita el alojamiento de páginas web en PHP.

Si lo que queremos es empezar a trabajar YA contra PHP y/o tenemos planeado publicar nuestra página en internet, lo mejor es tener un alojamiento externo (o sea, en un servidor de internet), ya que dispondremos de un nombre para nuestra web, un lugar donde colocar nuestros PHP y, generalmente, una base de datos MySQL con los permisos suficientes para conectarse con nuestros PHP (ya veremos cómo).
Si lo que deseas es probar en tu PC las páginas PHP sin necesidad de estar cargándolas en un servidor externo ni consultándolas vía internet, no tienes otro remedio que instalarte en tu equipo los siguientes componentes:
- Un servidor Apache (1.3.x ó 2.x)
- Un procesador PHP 4.x que luego integres con tu Apache.
- (opcional) Un servidor de base de datos MySQL.

En Windows todo esto lo puedes tener bajándote e instalando el programa PHPTriad (http://sourceforge.net/projects/phptriad/) o alternativas similares como FoxServ. En Unix/Linux no tienes más remedio que hacerlo tú mismo paso a paso (hay muchos tutoriales sobre ello en internet, basta que busques un poco). La instalación de PHPTriad es muy sencilla, la única pega es la configuración del MySQL que tampoco es de excesiva complejidad. Si te decantas por esta opción y te quedas atascado o con problemas, coméntamelo y te ayudo en lo que pueda.

Si lo que deseas es tener un alojamiento externo (lo habitual es referirse a “alojamiento” por su equivalente en inglés, hosting) hay muchos sitios web en internet que te lo pueden facilitar. Por ejemplo:
- www.hostinger.es  (muy recomendado, es donde he reubicado todos los ejemplos)
- www.host.sk
- www.iespana.es
- miarroba.com
- etc
Por lo general todos te van a ofrecer lo mismo:
- Un espacio máximo de alojamiento para PHP e imágenes (entre 10 y 100MB), con un acceso FTP para gestionar los archivos que publiques (y/o una interfaz web para hacerlo, como ofrece host.sk)
- Una conexión a base de datos MySQL con una interfaz web para gestionarla (la interfaz web se le llama PHPMyAdmin y también la tendrás disponible si te has instalado localmente el PHPTriad).

No es el objetivo del blog explicar cómo se hace una conexión FTP para transferir archivos así que no entraré en detalles, pero como siempre, cualquier duda que tengas coméntamela e intentaré resolverla.

Bien, ya tenemos dónde ubicar nuestros PHP. Ahora la pregunta es ¿cómo creo un PHP?. Como cualquier lenguaje de programación de tercera generación, una página PHP se compone de instrucciones de texto, por lo que el editor más simple (el bloc de notas del windows por ejemplo) nos sirve para crear o editar un PHP. Ahora bien, existen herramientas en el mercado (algunas comerciales, otras gratuítas) que nos pueden facilitar mucho la labor. Yo os recomiendo tener una de estas dos (o ambas):
- Crimson Editor (http://www.crimsoneditor.com/): es un potente editor completamente gratuíto para varios lenguajes de programación (C, C++, HTML, PHP, ...). La gran ventaja de este editor respecto al bloc de notas de Windows es que utiliza combinaciones de colores para distinguir las distintas “marcas” especiales que utilizan los lenguajes de programación (distingue los bloques de inicio y fin, las palabras reservadas del lenguaje, las marcas HTML, etc etc etc) con lo que la visualización y modificación de código se hace algo más clara y sencilla.
- Dreamweaver (http://www.adobe.com/es/products/dreamweaver/) es, a mi juicio, el editor más potente que existe. En realidad es un 4GL (lenguaje de cuarta generación) puesto que permite la inserción de código “prefabricado” (esto es, módulos estándar que el programa conoce y te ahorra escribir muchas líneas de código) y te ofrece un entorno visual para programar webs (puedes ver la página resultante mientras la diseñas). Por el contrario, no es gratuito (lo que es más, es bastante caro) por lo que si no dispones del dinero suficiente para comprar una licencia, es mejor utilizar una alternativa gratuita (aunque ni por asomo tan potente) como el editor Crimson.

Si dispones de una instalación de Office en tu equipo puedes utilizar FrontPage, que si bien está más orientado a tecnologías Microsoft (páginas web ASP) al menos te puede facilitar un entorno visual para la parte estática de las páginas que diseñes (esto es, la parte que esté hecha con HTML y no necesite de PHP).

En la siguiente entrada crearemos nuestro primer PHP y discutiremos el uso y tipos de variables de PHP.

3 comentarios:

Anónimo dijo...

Hola! estoy intentando en php, pero con IIS, php y MySql. tiene algo q me pueda ayudar!? Gracias!!!!

Anónimo dijo...

Hola! Estuve leyendo y aprendiendo con tu blog y está muy bueno. Gracias por tu aporte!

Unknown dijo...

Gracias a todos por los comentarios, voy a intentar retomar el blog avanzando un poco con los formularios :-)