Extensión PHP para Drizzle

Ya he hablado anteriormente de Drizzle, una base de datos muy ligera y rápida, pensada para aplicaciones web. Lo que se echaba en falta era una librería PHP para poder desarrollar.

Drizzle PHP Extension es una extensión que nos permite desarrollar bajo PHP usando Drizzle de forma sencilla.

$drizzle= drizzle_create();
$con= drizzle_con_add_tcp($drizzle, "127.0.0.1", 0, "root", NULL, "sakila", 0);
$result= drizzle_query($con, "SELECT * FROM film LIMIT 3");
drizzle_result_buffer($result);
while (($row= drizzle_row_next($result)) != NULL)
print implode(':', $row) . "\n";

Drizzle PHP Extension

Vía / Oddments

CodeIgniter 1.7.1

Ha salido la nueva versión de CodeIgniter (1.7.1) que soluciona algunos bugs y trae algunas mejoras, como por ejemplo evitar XSS en casos específicos contra Internet Explorer.
Sigo recomendando CodeIgniter a todos aquellos que programen PHP.
CodeIgniter 1.7.1
Vía / PHPDeveloper.org

Convertir IP en su país con PHP

Desde Devshed nos ofrecen un completo tutorial para realizar una aplicación que convierte una dirección IP en su correspondiente país. Para ello, lo más importante es la base de datos de direcciones IP: http://software77.net/cgi-bin/ip-country/geo-ip.pl, sin la cual no se podría hacer la aplicación.
Después nos indica cómo pasar la BD de las IPs a una tabla de MySQL mediante un script, y ya con esta tabla podremos trabajar con la relación IP-país.
Building an IP-to-Country Mapping Application with PHP

Crear una nube de etiquetas con jQuery

Aunque las nubes de etiquetas ya no están tan de moda como hace un tiempo, el tutorial donde explican cómo hacer un tagscloud mediante jQuery merece la pena, ya que se trata de una explicación detallada.
No solo se centra en jQuery, sino en la parte PHP que devuelve los datos en JSON y en los estilos CSS para mostrar las etiquetas según su relevancia.
Realmente la parte jQuery solo cambia el tamaño de la letra según la frecuencia de la etiqueta.
Building a jQuery-Powered Tag-Cloud

Crear daemons con PHP

Muy buen tutorial que nos explica paso a paso cómo crear un daemon para Linux usando PHP. A parte de la explicación del desarrollo del script, haciendo uso de la librería System_Daemon, me gustaría destacar que aunque muchas veces usamos el cron, no siempre es lo más adecuado, ya que el cron solo nos permite ejecutar el script como máximo cada minuto y que si el script anterior no ha finalizado, se ejecutarían dos procesos a la vez, lo cual puede que no sea lo más conveniente.
Create daemons in PHP

phc: compilador PHP

phc es un compilador de PHP (un poco verde aún) que nos permite crear ejecutables con el código de un script PHP.

Para los desarrolladores de PHP nos ofrece las siguientes posibilidades:

  • Compilar código PHP en ejecutables optimizados
  • Compliar aplicaciones web en extensiones optimizadas
  • Formatear el código PHP de forma “bonita”
  • Ofuscar el código PHP
  • Combinar varios scripts PHP en uno solo
  • Optimizar el código PHP usando optimizaciones de complicación (experimental)

Ahora tengo dos dudas, si todo fuera optimizado y no se tratara de una versión inicial (por ahora no admite programación orientada a objetos):

  • ¿En Apache se pueden ejecutar los compilados en el cgi-bin?, juraría que sí pero no lo tengo muy claro.
  • ¿Qué es más eficiente: Apache preparado para interpretar PHP o ejecutar un compilado? siempre es más eficiente ejecutar que interpretar, pero no estoy tan puesto en Apache para saber qué puede ser más rápido.

phc

Monitorizar la subida de ficheros en PHP

Algo que echo en falta de PHP es la posibilidad de saber en qué porcentaje se ha subido un fichero (por ejemplo para mostrar una barra de progreso), algo que si permiten otros lenguajes de programación.
Para poder realizarlo en PHP es necesario tener instalado APC, que mediante el parámetro APC_UPLOAD_PROGRESS permite monitorizar el progreso del upload.
El tutorial explica muy detalladamente cómo realizar un file uploader en PHP, explicando los siguientes aspectos: instalación de APC, cómo monitoriza APC, clases de PHP básicas, implementación del uploader y ampliación de las clases para mostrar el progreso.
Monitoring File Uploads using Ajax and PHP

Yii: framework PHP

Yii es un framework PHP desarrollado por el creador de Prado que está centrado en el desarrollo de aplicaciones web2.0 (integrando jQuery) y presume de ser una de las más rápidas y con mejor rendimiento (sobre todo usando APC).

Al igual que muchos otros frameworks, viene con las siguientes características:

  • MVC
  • ADO y Active Record
  • Validación de formularios
  • Widgets web2.0
  • Autenticación
  • Themes
  • Web Services
  • Internacionalización
  • Cache
  • Control de errores y logs
  • Seguridad
  • Generacion automática de código
  • OOP

Las pruebas de rendimiento indican que es muy rápido, sobre todo usando APC, pero bueno, las pruebas siempre las tiene que hacer alguien externo.

Yii Framework

Devolver valores en includes de PHP

Está claro que cada día aprendo algo nuevo en PHP, quizás esto lo conoce todo el mundo, pero en mi caso lo desconocía. Se trata de que los include, requiere devuelvan un valor (muy útil con ficheros de configuración).

Si tenemos este fichero:

return array(
'hostname' => 'localhost',
'database' => 'test',
'username' => 'test',
'password' => 'test',
);

Al insertarlo en otro script, lo podremos asignar a una variable:

$config = include 'config.php';
var_dump($config);

The return value of include