Aplicacion de escritorio con PHP

Este es un caso que me ha ocurrido trabajando. Tenemos en un servidor una aplicación web, escrita en PHP, que trabaja manipulando documentos, cumple con su función perfectamente y no ha necesitado mantenimiento. Puesto que no accede a ninguna base de datos, seria útil tener acceso a ella en una versión "offline" para no depender de la conexion a internet. "A bote pronto", la primera solución era volver picar toda la aplicación en otro lenguaje (Java, por ejemplo); otra solución era utilizar algún tipo de servidor local (WAMP, XAMPP, etc). Pero, ¿acaso no existía una forma rápida de aprovechar todo el código ya escrito sin tener que instalar un servidor local en cada pc que lo utilizara?

"Googleando" he podido encontrar varias opciones mas o menos validas para crear apliaciones PHP de escritorio, hasta que he dado con phpdesktop:  un proyecto open-source que integra un navegador embebido (se puede elegir chrome o internet explorer), un servidor web y un interprete PHP en una misma aplicación "stand-alone". Como dicen en la propia descripción del proyecto, proporciona una forma de desarrollar aplicaciones nativas de escritorio utilizando tecnologías web como PHP, HTML5, Javascript y SQLite.
La manera de hacer funcionarlo no podía ser mas simple:
  1. Se descarga y se descomprime el paquete (versión Chrome o versión Internet Explorer)
  2. Se copian los archivos de nuestra aplicación en la carpeta "www". La carpeta ya contiene varios ejemplos, podemos dejarlos para probarlos o borrarlos.
  3. Iniciamos el ejecutable "phpdesktop" de la carpeta principal. 
¡Y ya esta! Funcionando en menos de 5 minutos y sin instalaciones ni nada parecido. Podemos llevarlo donde queramos en una memoria USB, basta con copiarlo todo (paquete + proyecto en la carpeta "www"). Además, el paquete incluye un archivo de configuración "settings.json" que nos permite personalizar diferentes parámetros del programa: titulo de la ventana de la aplicación, icono, mostrar/ocultar la consola de ejecución, idioma del navegador embebido, ...

Referencias:
http://phpocean.com/tutorials/back-end/create-your-first-desktop-application-with-php-and-php-desktop/4
http://robinz.in/develop-a-desktop-application-using-php-html5-javascript-websql/

Comentarios

Entradas populares de este blog

Obtener provincia a traves del codigo postal con Javascript

GUI en Python con Glade

Conversor de imagenes a Base64