PHP

94 entradas

PHP es el lenguaje de programación de mayor aceptación entre las aplicaciones web. La gran mayoría de los CMS orientados al mundo de la web están desarrollados sobre PHP.

Preparado para correr sobre un servidor web, aunque en mucha menor medida también se puede utilizar en entorno de terminal. Tiene una curva de aprendizaje muy baja, es muy permisivo con los errores, es interpretado, no compilado y orientado a objetos, entre otras cosas.

Aunque sea un lenguaje muy aceptado por los principiantes, es muy atacado por muchos experimientados en la programación. No obstante es uno de mis lenguajes preferidos. Y sobre todo, al desarrollar para la web, siendo prácticos, es una de las primeras y mejores soluciones balanceando entre el conjunto de lenguajes disponibles.

Logo de PHP

PHP 4: Bucles

Bueno, ya llegando a éste minitutorial se va poniendo divertido. Aquí tenemos las primeras estructuras de control que con pocas líneas de código nos van a permitir hacer muchas cosas. Ahora te preguntarás que como con programando pocas líneas podemos hacer muchas cosas. Sí! Para entenderlo rápidamente, por ejemplo, si queremos hacer una tarea un millón de veces. Programando un bucle que podría tener apenas tres lineas podría hacerse. for El bucle for ejecuta un número de veces una tarea, por ejemplo: for($i=1; $i<=1000000; $i++){ // ésto es un comentario que no se ejecuta // porque tiene delante las barras echo $i; } Éste bucle usa una variable $i que va desde 1 hasta 1000000, saltando de uno en uno. Es decir se ejecuta un millón de veces el echo $i; En la primera línea podemos ver el valor inicial, hasta cuándo ejecuta el bucle, y de cuánto es el incremento entre vuelta y vuelta del bucle. Éste miniprograma imprimirá “123456789101112131415… así sucesivamente hasta llegar a …9999991000000” Si tratas de ejecutar éste bucle probablemente no terminará porque un millón de veces es demasiado, saltará un temporizador en el servidor y cortará la ejecución por tardar demasiado. foreach El foreach nos […]

Logo de PHP

PHP 3: Condicionales

Siguiendo con la serie de minitutoriales, hoy les voy a dejar uno sobre los condicionales en PHP. Estamos viendo lo que se llaman estructuras de control, y dentro de ellas pretendo dividirlas y ver aquí sólo los condicionales if y switch. Si buscas un tutorial breve y concreto, sin rodeos y sin entrar en detalles, aquí lo tienes. A saber.. If Los condicionales comprueban si se cumple una condición, como su nombre indica, y en ése caso ejecutan el código programado en él. Por ejemplo: <!DOCTYPE html> <html> <head> <meta charset=”utf-8″> </head> <body> <p> <?php $variable = 2; if ($variable == 2) { echo “La variable vale dos.”; } else { echo “La variable no vale dos.”; } ?> </p> </body> </html> El código habla por sí sólo. Tenemos una web que utiliza el estándar HTML5 como indica su DOCTYPE, y en el cuerpo de la página tenemos incrustado código PHP. Simplemente mira si la variable vale 2 y como así es imprimirá ‘La variable vale dos.” en la web. Si no valiera dos entonces ejecutaría lo que hayas puesto en el else. El meollo de los condiciones está en la expresión de comparación ($variable == 2). Tenemos disponibles varios […]

Logo de PHP

PHP 2: Variables

Continuando con los minitutoriales para aprender rápidamente y en dos dias PHP, ahora las variables.. No hace falta declarar el tipo de variable que vamos a usar, simplemente le damos valor y la usamos. PHP no es fuertemente tipado. No hace falta definir el tipo de variables que usamos, además de que la naturaleza de las variables puede cambiar a lo largo de la ejecución de los programas. PHP tiene características muy buenas para aprender a programar gracias a su flexibilidad. Quizá por esto es bien popular. Pero a la vez, esta flexibilidad, libertad, o libertinaje, da lugar a quizá códigos fuentes a veces confusos i no lo mejor posibles. Pero esto es otro tema para otro post, así que vamos al grano.. Variables simples Las variables utilizan el símbolo $ delante del nombre de la variable. $variable = “cadena”; $variable2 = 1; $variable3 = 1.2; $variable4 = true; echo $variable; Ésto escribirá ‘cadena’ en la web. Es sencillo ¿verdad? simplemente le damos valores y las usamos. Variables no tan simples A modo de curiosidad, en un test me preguntaron para qué servían las variables con doble $, pues mira el código siguiente: $variable2 = “cadena2”; $$variable2 = “otro valor”; […]

Logo de PHP

PHP 1: Escribiendo la respuesta

Aquí desde Spain la crisis sigue apretando, no hay mucho trabajo así que aprovecho para seguir con los minitutoriales. Continuando con éste nuevo post, sin demasiada teoría, vemos dónde ponemos el código PHP. Al grano.. Escribiendo la respuesta Partimos de que ya tenemos un esqueleto básico en HTML de nuestra página index.html o cualquier otra web con incluso CSS, Javascript, etc. Por ejemplo: <!DOCTYPE html> <html> <head> <title>PHP 1: Escribiendo la respuesta</title> <meta charset=”utf-8″> </head> <body> <!– AQUÍ VA EL CONTENIDO DE LA WEB –> <?php echo “<p>¡Hola mundo!</p>”; ?> </body> </html> En cualquier lugar podemos usando las etiquetas <?php código fuente ?> incluir nuestra programación que se ejecutará antes de enviar al navegante. Éste código dará de resultado, simple y llanamente el siguiente resultado que enviará al navegador: <!DOCTYPE html> <html> <head> <title>PHP 1: Escribiendo la respuesta</title> <meta charset=”utf-8″> </head> <body> <p>¡Hola mundo!</p> </body> </html> Existen otras formas de escribir la respuesta, pero para escribir simple texto con echo tenemos bastante. Tenemos también print, printf, fprintf, etcétera.. También podemos tener una página completamente en PHP, en la que sólo hace falta que abramos la etiqueta <?php y sin cerrar. Pero en éste caso, todo debe generarse desde PHP. Es […]

PHP 0: Preparando las herramientas

Inaguro con éste post una serie de pequeños tutoriales que pretendo publicar para auto-reciclado de nuestros conocimientos. O para aprender los nuevos, los que los lleguen a leerlos, de una manera no demasiado técnica, aprendiendo los conceptos básicos sobre programar en PHP. La sintáxis de PHP es parecida a C/C++, Java, JavaScript, así que si ya conoces alguno de éstos lenguajes verás más claros los codigos. Sobre navegar En Internet, mientras navegamos, todo ocurre de la forma: el navegador pide una página aun servidor web, el servidor web se encarga de hacer lo que tenga que hacer y construye la respuesta, y finalmente ésta respuesta se la envía al nevagador web. Hay una arquitectura cliente-servidor, donde el cliente (navegador) hace peticiones al servidor (servidor web) y éste le devuelve lo pedido. Navegador ——————> realiza petición ———————> Servidor Web ..el servidor procesa la petición, aquí PHP se ejecuta.. Navegador <—————— recibe la petición <——————- Servidor Web PHP se ejecuta en el servidor, aunque también permite ejecutarse en línea de comandos, como el antiguo MSDos o el bash de Linux. Es decir, lo que programemos en PHP va a ejecutarse en el servidor web que tengamos antes de enviarsa nada a nuestros […]

Joomla! Platform 4: Autocarga de clases con JLoader

Empieza el domingo interesante. Un poco desesperado porque el framework de Joomla no tiene mucha documentación para usarlo independientemente del CMS pero ahí seguiré atento a los cambios, que seguro que algún día se convertirá en un framework de la categoría de Symfony o Codelgniter, por ejemplo. Con 2700 desarrolladores en todo el mundo, más de 6000 extensiones, con un 2,7% de portales en Internet que usan Joomla! ésto promete. A fecha de hoy leo en los foros de grupos de desarrollo que con la separación de Joomla Platform del desarrollo del CMS se están cambiando los espacios de nombres y añadiendo más y más funcionalidades. Una de éstas últimas es el nuevo método para autocargar clases. Con un ejemplo se ve bien sencillo: <?php // se importa la Plataforma Joomla. require_once ‘libraries/import.php’; // directorio base que se usa para el autocargador de clases const JPATH_BASE = __DIR__; // registra un prefijo cualquiera JLoader::registerPrefix(‘Jnj’, JPATH_BASE); // crea una instancia de la clase nueva $app = JApplicationWeb::getInstance(“JnjUnDirectorioEjemploWeb”); // se supone que debemos guardar la applicación en el core JFactory::$application = $app; // y entonces podemos ejecutarla desde el core JFactory::getApplication()->execute(); // así queda todo ordenado en el núcleo del framework Éste […]

Joomla! Platform 3: Bases de datos

Ya llegó el calor, terminaron los exámenes de junio y parece que ya llega el verano, aunque hace poco aún estaba lloviendo en la costa mediterránea de España. Yo sigo con lo mío y hoy les traigo un acceso a bases de datos usando SQLite, una base de datos de dominio público, embebida, no necesita instalación y simplemente con que PHP tenga activada la extensión para ello ya podemos usarla. Como viene siendo costumbre de la serie que escribo, me voy a centrar en el uso en un servidor web, con lo que el ejemplo es una página web. Se puede también ejecutar en línea de comando pero yo no uso PHP de esa forma así que… vamos al grano. Materiales El framework Joomla Platform. Yo he usado la versión 12.3, la oficial veo que es la 12.1 y está en desarrollo la 13.1. Aquí hay más información para los curiosos como yo. Un entorno de desarrollo. Aquí ya para gustos estan los colores, Eclipse va muy bien y es multiplataforma. Un servidor para ejecutarlo. XAMPP funciona muy bien y también es multiplataforma. Empezando Descomprimo el framework en el directorio si es que no lo tengo ya, entonces hay que […]

Mirando dentro de Joomla

Joomla! Platform 2: La fábrica de objetos de Joomla

Hoy les escribo un poco más sobre Joomla y su framework de desarrollo en PHP, la Joomla Platform. Esto es una joya, aunque no se usa mucho de manera independiente al CMS puede ser que pronto se haga. Por lo menos mi opinión es que es un buen framework; simple, rápido y eficaz, una buena alternativa. Siguiendo con la carnicería, sacando toda la casquería, las tripas y demás de todo lo que es el CMS y el framework. Y nos encontramos con la fábrica de objetos, la clase JFactory. La fábrica de objetos se usa constantemente en el CMS, en el desarrollo de extensiones, y si queremos desarrollar un sitio web a partir del framework podemos usarla y de esta manera tendremos todo el proyecto mejor estructurado. Materiales El framework, Plataforma Joomla para los amigos. Un entorno de desarrollo o editor de texto: Eclipse, Notepad++, Gedit, Vi, Notepad o el que sea que use.. Un servidor web con PHP: Va muy bien el XAMPP El ejemplo Con ésto pequeño ejemplo se puede ver una forma muy simple de usar el framework: …<?php// se importa la Plataforma Joomla.require_once ‘libraries/import.php’;// en éste ejemplo tan simple la clase la pongo aquí pero // […]

Joomla! Platform 1: Configuración y otros datos, JConfig y JPlatform

Continuando con la serie de minitutoriales sobre la Plataforma Joomla, en éste post voy a empezar a despellejar y destripar poco a poco ésta joya de la informática. A fecha de hoy Joomla es el CMS más utilizado en todo el mundo y hay una comunidad muy grande que lo mantiene. Si vamos a usar un framework PHP, nos vamos a asegurar de que la aplicación va a seguir una estructura, un orden a la hora de programar. Cada archivo, módulo, subprograma, función… va a ser claro de su padre y de su madre. Pero si usamos un framework, cualquiera que lo conozca podrá colaborar en el proyecto más pronto que tarde, porque será más legible, tendrá menos líneas de código probablemente que si lo hubieramos desarrollado desde cero. Todo ésto porque nos ahorraremos unas cuantas líneas de código. Así que veamos pues cómo lo han hecho… Materiales Simplemente 3 cosas para seguir éste minitutorial: Un servidor web con PHP como XAMPP, disponible para varios Sistemas Operativos, o el Uniform Server portable y para Windows. Nuestro editor o entorno de desarrollo preferido. Como por ejemplo Eclipse, Notepad++, etc… El CMS si queremos probarlo lo tenemos en castellano en http:/www.joomlaspanish.org. Y […]

Mirando dentro de Joomla

Joomla! Platform 0: Introducción

Joomla sí, Joomla no ¿Debo usar un CMS para montar una web? ¿O más bien debo programar desde cero? La gran pregunta a la hora de hacer una web. Leo en algunos sitios que no hay que “reinventar la rueda”, que ya tenemos disponibles unos CMS (gestores de contenido), que los ponemos online con un bonito diseño, rellenamos el contenido y ya tenemos lista una web. Pero ¿qué pasa a la larga con esa web si nos piden algo extraño? Por otro lado podemos empezar desde cero, pero al final llegaremos tarde o temprano a usar herramientas que nos ahorrarán código como por ejemplo para enviar emails, generar PDFs o lo que sea que necesitemos. Al final podemos llegar a reunir tal conjunto de utilidades creando nuestro propio framework. Pudiera ser el caso de que disponemos de mucho tiempo, y llegásemos a desarrollar algunas de éstas utilidades nosotros mismos. Pero al final acabaríamos creando un CMS propio, con lo que estamos en el mismo punto en el que ya está Joomla! entonces pues lanzo la pregunta, ¿porqué no aprender y usar ya Joomla! y la Joomla!Platform? Joomla y su Platform tienen detrás una gran comunidad que los mantiene. Algo bastante […]