Dic 12

En la pasada Anoia PHP Conference mi amigo Victor Guardiola realizó una interesante ponencia acerca de como trabajar con GData desde PHP usando las clases que el Zend Framework nos ofrece para ello. Concretamente presenta un ejemplo de como desarrollar un listado de tareas mediante Zend_GData, Zend_GData_ClientLogin y Zend_GData_Calendar.

Os dejo el enlace para descargar la presentación. Por cierto, si os gusta el formato de la presentación está realizada con Google Docs, of course :)

Etiquetas:
Dic 12

Funcaday.com es un interesante proyecto presentado hace pocos días por Paul Reinheimer y Courtney Wilson. Se trata de un especie de calendario donde se pretende explicar una función PHP cada día de la semana y un concepto cada fin de semana.

Es algo parecido a la iniciativa que tuvo Nexen.net de hacer el mes de las funciones PHP pero que dura para siempre. Teniendo en cuenta que el PHP ofrece alrededor de 3000 funciones tienen unos años de contenido asegurado :)

Vía Zend Developer Zone

Etiquetas:
Dic 04

MediaWiki es, probablemente, el motor para wikis más conocido del mundo. Originalmente creado para la Wikipedia actualmente es usado por una gran cantidad de wikis que nada tienen que ver con dicha fundación. La instalación por defecto del MediaWiki configura unas URLs no muy apropiadas en los tiempos que corren (con scripts PHP visibles y parámetros por GET) pero que tienen la ventaja de funcionar correctamente en un mayor número de servidores. Si dispones de mod_rewrite a continuación describo una forma de hacer estas URLs un poco más "bonitas" y cortas.

Acerca de este tema existe mucha documentación y en el apartado correspondiente del manual puedes encontrar varias alternativas. Después de haber trabajado con varias wikis en estos últimos años la que encuentro mejor es la siguiente.

Modificar LocalSettings.php

Se debe sustituir el valor de la variable $wgArticlePath por:

$wgArticlePath      = "/$1";

y si no tienes definida esta variable se debe añadir en un lugar cercano a la definición de $wgScriptPath.

Modificar .htaccess

Añadir las siguientes lineas a tu .htaccess:

RewriteEngine On
RewriteBase /
RewriteRule ^$ http://www.ejemplo.com/Portada [R=301,L]
RewriteRule ^[^:]*\. - [L]
RewriteRule ^[^:]*\/ - [L]
RewriteRule ^(.+)$ /mediawiki/index.php?title=$1 [L,QSA]

Las URLs resultantes tienen la forma:

http://www.ejemplo.com/Portada para la Home.
http://www.ejemplo.com/Prueba para una página llamada "Prueba".

Consideraciones

Este método funciona correctamente en distintos escenarios aunque se han de tener en cuenta algunas consideraciones:

[1] La wiki debe estar instalada en el directorio "mediawiki". Si la tienes en otro directorio sustituye "mediawiki" por el nombre apropiado en las anteriores reglas de mod_rewrite.

[2] Si alguien accede a la raíz del dominio es redirigido a "/Portada" con una redirección permanente (301).

[3] Si el nombre de tu wiki contiene un punto (p.e. Ejemplo.com) fallarán los accesos a algunas páginas especiales. Para forzar que las páginas especiales que usan el nombre de la wiki en la URL se procesen correctamente es necesario añadir la siguiente regla justo después de la redirección a la Portada:

RewriteRule ^Ejemplo\.com(.+)$ /mediawiki/index.php?title=Ejemplo.com$1 [L,QSA]

Etiquetas:
Nov 28

Si eres programador PHP y constantemente estás consultando la documentación de las funciones en www.php.net tienes varias opciones para optimizar esta tarea: usar una IDE con la documentación integrada, plugins para Firefox, tener la documentación en un archivo CHM en local, etc. La que para mi es la mejor es añadir un bookmark con la keyword "php" al Firefox porque prefiero visitar www.php.net y así poder ver los últimos comentarios de la gente.

Hasta que descubrí que el propio FireFox ya ofrece esta funcionalidad (no sé en que versión la añadieron, o quizás ha existido siempre) usaba un bookmark como este:

Location: http://es.php.net/%s
Keyword: php

Usando lo anterior, o con una versión reciente de Firefox, puedes escribir algo como "php mail" en la barra de direcciones para ir directamente a la documentación de la función mail().

Hoy navegando he encontrado un bookmark más "evolucionado":

Location: javascript:var lookUp=prompt(%22Función a buscar:%22, %22%22); if(lookUp!= %22%22 && lookUp != null) { window.location.href = 'http://es.php.net/' + lookUp; }
Keyword: php

Si lo añades en tu Bookmarks Toolbar con el nombre que quieras a parte de seguir ofreciendo la búsqueda rápida con la keyword "php" puedes clicar directamente el link y se te presentará un cuadro de diálogo preguntando por el nombre de la función.

Otra opción es instalar el plugin PHP Lookup para añadir una barra de búsqueda rápida como esta:

Firefox Add-ons » PHP Lookup

Etiquetas:
Nov 12

Desde el pasado 8 de Noviembre tenemos disponible una nueva entrega del PHP, la 5.2.5. Al igual que la versión anterior está centrada en la corrección de bugs sin muchas funcionalidaddes nuevas.

Se corrigen alrededor de 60 bugs algunos sobre temas de seguridad, como siempre puedes consultar la lista completa en el changelog oficial.

Etiquetas:
preload preload preload