# Programación en PHP

PHP es un lenguaje de programación de uso general de código del lado del servidor. Originalmente fue diseñado para el desarrollo web de contenido dinámico. Está actualmente entre los proyectos de código abierto más populares (gracias en parte a la similitud de su sintaxis con el lenguaje C). El código es interpretado por un servidor web con un módulo procesador de PHP que genera la página Web resultante.
Si alguna vez accediste a un sitio web que te diese la opción de iniciar sesión, probablemente ejecutara un lenguaje de script del lado servidor; seguramente estaría ejecutando PHP, debido a su gran impacto en el mercado, . Este lenguaje fue creado originalmente por Rasmus Lerdorf en 1995 y actualmente sigue siendo desarrollado con nuevas funciones por el grupo PHP.
Básicamente, PHP permite a páginas estáticas convertirse en dinámicas (aunque es mucho más que eso). El nombre "PHP" es un acrónimo que significa "PHP: Hypertext Preprocessor", en español "PHP: Preprocesador de hipertexto". La palabra "hipertexto" significa que PHP realiza cambios antes de que el contenido (como la página HTML) sea creado. Esto permite a desarrolladores crear potentes aplicaciones que publiquen blogs, controlen hardware remotamente o ejecuten potentes sitios web como Wikipedia o Wikilibros. Por supuesto, estos sitios utilizan otras tecnologías en conjunto con PHP, por ejemplo un servidor de bases de datos como MySQL.
Antes de embarcarte en el maravilloso viaje del procesamiento en el lado Servidor, es recomendable que tengas unas nociones básicas sobre HTML. PHP es usado también para crear aplicaciones gráficas; PHP-GTK se utiliza para crear interfaces gráficas de usuario (GUI).

## Instalar PHP

La mayor aplicación de PHP es como lenguaje de script en servidores (implicado en generación de páginas web), aunque se puede utilizar perfectamente como cualquier otro lenguaje de programación para fines más generales.
Si quieres utilizar PHP en tus páginas web, es necesario que poseas (o tengas acceso a) un servidor donde alojar esas páginas. Para esto, no es necesario que tengas una página web con su nombre registrado en Internet, porque puedes habilitar un servidor web en tu ordenador y servir ficheros localmente o través de una red.
Una forma de hacerlo es con Apache Web Server, el software de servidor web más utilizado hoy en día. Para una explicación sobre cómo obtener, instalar y configurar este software, ver Obtener Apache Web Server y PHP.
Si todavía no quieres profundizar sobre qué es un servidor, cómo instalarlo, configurarlo y agregarle el módulo de PHP, puedes utilizar paquetes que sólo deben ser instalados como EasyPHP o el WAMP, ambos, para el Sistema operativo Windows.
También existe otro programa similar al EasyPHP se llama Appserv el cual instala todo a través de una sola instalación y además permite poner PHP-Nuke de serie. O puedes usar un paquete creado por los desarrolladores de Apache, llamado XAMPP que posee versiones para GNU/Linux, Windows, Mac, Solaris.
Recientemente ha aparecido una alternativa al servidor Apache, llamada Cherokee que también permite programar en PHP y cuya configuración es mucho más simple que la del servidor Apache, lo cual puede ser una gran ayuda para los recién llegados.

## Probar PHP

Probar si PHP funciona es muy fácil. Simplemente, copia este texto en algún editor sencillo (nada de Word o editores así, que meten caracteres "ocultos", usa editores de texto puros como Notepad o gedit). Ahora, salva el documento con nombre "index.php" en tu directorio web. Borra el archivo "index.htm" de ese mismo directorio para que no haya confusiones y digita en el navegador http://localhost/ o http://localhost/index.php
Deberías ver el texto "Hola mundo" en el navegador. Asegúrate de que no estás accediendo al fichero localmente (C:/Web/index.php) sino a través del servidor (http://localhost/index.php). Si accedes localmente al fichero, simplemente verás el contenido de ese fichero de texto.
PHP tiene, además, la función phpinfo que puedes utilizar para comprobar tu instalación y aprender algo sobre algunas de las características especiales disponibles. Para utilizarla, simplemente crea una nueva página (podría llamarse "phpinfo.php") y escribe en ella:
Ahora, sitúa el fichero en tu directorio web y visualiza la página con el navegador (por ejemplo, http://localhost/phpinfo.php)

## Aprender PHP
### PHP básico

* Empezando con "Hola mundo"
* Bases del lenguaje
* Comentarios y estilo
* Variables
* Cadenas
* Operadores
* Estructuras de control
** La estructura if
** La estructura switch
** El bucle while
** El bucle Do while
** El bucle for
** El bucle foreach
** Include y require
** Estructura Go To
* Funciones
* Envío de correo electrónico
* Fecha y hora

### PHP medio

* Cookies
* Sesiones
* Arrays
* Expresiones regulares
* Programación orientada a objetos
* Funciones variadas MATH, DATE...
* Manejo de ficheros
* Bases de datos MySQL

### PHP avanzado

* Introducción a SQLite
* Generación de gráficos con librería GD
* Visualización gráfica de datos (charts) con ezComponents
* Generación de PDFs con librería UFPDF
* Plantillas Smarty
* SimpleXML (PHP 5)
* Usando código Perl desde PHP
* La extensión SOAP
* Manejo de Sockets

### Ejemplos Practicos PHP

* Calcular Edad
* Traspaso de variables usando GET
* Intercambiar variables
* PHP, MySQL y la extension mysqli
* XML en PHP 5
* Redondear un Numero

## Enlaces externos

* PHP.net - La página oficial de PHP. Aquí puedes conseguir el PHP y leer su documentación
* NuSOAP - La página oficial de NuSOAP. NuSOAP son un conjunto de clases para implementar servicios web con PHP.