Tratar datos binarios en PHP
Método sencillo para leer cabeceras binarias de imágenes GIF o JPEG u otros ficheros guardados en binario…
Método sencillo para leer cabeceras binarias de imágenes GIF o JPEG u otros ficheros guardados en binario…
Para poner WordPress en modo mantenimiento, cuando actualizamos el theme o plugins y nos va a llevar un tiempo, o en otra ocasión, tan solo tendremos que crear un fichero con nombre .maintenance en el raíz de WordPress.
Si además queremos mostrar un HTML específico, podemos crear el fichero /wp-content/maintenance.php que se cargará si existe.
El fichero .maintenance debe tener definida la variable $upgrading con un timestamp, según dice el código de WordPress, con el valor del momento en el que el fichero fue creado, pero luego viendo el código comprueba que hayan pasado 10 minutos. Yo en mi caso le he asignado el valor de time() y ya borraré yo el fichero cuando haya acabado.
Algo que nos puede ser muy útil cuando estamos haciendo aplicaciones distribuidas, es saber si el puerto de una máquina está abierto. Otro ejemplo es que si queremos incluir contenido de otro sitio en nuestra página y no queremos que nos devuelva una página de error no personalizado, podemos hacer lo mismo, comprobar si está el puerto 80 abierto:
<?php
// Dominio a comprobar
$sitio = "www.dominio.com";
// Puerto a comprobar, el web es el 80
$puerto = 80;
$fp = fsockopen($sitio,$puerto,$errno,$errstr,10);
if(!$fp)
{
echo "No ha sido posible la conexión";
// El modo de tratamiento del error puede ser el que se quiera, por ejemplo enviar un email.
}else{
echo "Conexión realizada con éxito.";
fclose($fp);
}
?>
QueryPath es una librería PHP que permite trabajar con HTML, XML o web services de forma muy sencilla y parecida a la que se usa en jQuery, permitiendo usar métodos encadenados.
Puede usarse para importar documentos XML en una base de datos SQL, o pasar los resultados del SQL a un XML o HTML. Se pueden escribir documentos en HTML o convertir XML en HTML. Abrir documentos y buscar mediante selectores CSS3 o XPath.
qp('sample.html')->find('title')->text('Hello World')->writeHTML();
Vía / Developer Works
El buffer de PHP permite almacenar la salida de PHP para enviarla en bloques de cierto tamaño. Una forma de forzar el envío del buffer es usando el método flush(). Es interesante usar este método justo detrás de la cabecera del documento HTML, ya que cuando se envía el head el navegador puede empezar a descargar CSS, javascripts, iconos, …