Ésta va de PHP
12 de Abril 2006 a las 6:13 pm | En PHPVarios apuntes sobre el tema, el primero va sobre envío de emails con Zend. Desde la aparición de su framework están haciendo mucho para conseguir que PHP sea más que un lenguaje y crear una plataforma unificada para adaptarse a los nuevos tiempos y a la nueva forma de desarrollar aplicaciones web.
Seguimos con un proceso automatizado para generar releases del software escrito por el autor de Solar (¡seguimos con los frameworks!) en el que explica como ha desarrollado un sistema para crear releases de su software de forma automática (algo más complejo que hacer un tar.gz ;-) )
Y ya por último, a través de Schifflet, en O’Reilly hablan sobre la escalabilidad de Digg y PHP. Un interesante artículo escrito por un desarrollador Java que viene a confirmar las posibilidades de un sistema share nothing, como explica Rasmus Lerdorf cuando habla sobre la escalabilidad de PHP.
Enlaces sobre PHP (y AJAX de regalo)
17 de Marzo 2006 a las 11:38 pm | En PHP, RecursosEn developerWorks publican una lista recomendada de lecturas sobre PHP. La lista es orientada a los desarrolladores y está ordenada por temáticas, incluyendo desde la depuración hasta la migración, y resulta un recurso interesante para aquellos que estén introduciendose en el desarrollo con PHP.
Y otra lista que han publicado recientemente, esta sobre AJAX: 30 tutoriales sobre AJAX. Es posible que muchos de los desarrollos con RemoteScripting AJAX aparezcan como consecuencia de utilizar una librería o un framework.
Depuración con PHP Eclipse
10 de Diciembre 2005 a las 1:44 am | En PHPEn developerWorks publican un interesante artículo sobre depuración PHP con Eclipse. Personalmente encuentro PHP Eclipse como algo excesivamente pesado, peroes una plataforma de desarrollo muy potente y mucha gente está muy familiarizada con ella. En el artículo se explican varias técnicas de depuración, desde los rudimentarios print hasta la gestión de mensajes de error, concluyendo la parte más interesante en el uso de DBG, integrando su uso con Eclipse.
En otro orden de cosas, me gustaría recordar que si usamos Smarty podemos emular de una forma un poco más elegante el clásico método de los print mediante el uso de la consola de depuración, que para algunos pequeños problemas o como herramienta para un sistema en producción puede ser una solución aceptable.
Por cierto, que no es la primera vez que hablo sobre depuración y perfilado. ¿Alguna experiencia que queráis contar?
Rasmus explica AJAX en 30 segundos
25 de Octubre 2005 a las 5:11 pm | En General, PHP, CSS+HTML+JavaScriptHace un tiempo Rasmus Lerdorf, escribió un correo explicando sobre AJAX, aquí va una traducción al vuelo.
Creo que mucho de todo eso de AJAX es un poco exagerado. Mucha gente ha estado utilizando cosas parecidas
desde mucho antes que se llamase “AJAX“, y realmente tampoco es tan complicado como mucha gente lo hace parecer.
Aquí hay un pequeño ejemplo de una de mis aplicaciones. Primero el JavaScript:
function createRequestObject() {
var ro;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
ro = new ActiveXObject("Microsoft.XMLHTTP");
}else{
ro = new XMLHttpRequest();
}
return ro;
}
var HTTP = createRequestObject(); function sndReq(action) {
HTTP.open(’get’, ‘RPC.php?action=’+action);
HTTP.onreadystatechange = handleResponse;
HTTP.send(null);
} function handleResponse() {
if(HTTP.readyState == 4){
var response = HTTP.responseText;
var update = new Array();
if(response.indexOf(’|’ != -1)) {
update = response.split(’|');
document.getElementById(update[0]).innerHTML = update[1];
}
}
} Con este código creamos un objecto Request además de una petición de envío y una función que gestione
la respuesta. Si quieres usarlo añades este JavaScript a tu página. Después para usarlo tan sólo necesitas
enlazarlo a algo, como por ejemplo a un evento onclick o directamente en un href como este: [foo] Así cuando alguien haga click en ese enlace lo que realmente pasará es que se generará una petición a
RPC.php?action=foo que se ejecutará en el servidor. En RPC.php puedes tener algo como esto: switch($_REQUEST['action']) {
case 'foo':
/* do something */
echo "foo|foo done";
break;
...
}
Ahora, miremos a la función handleResponse. Analiza la cadena “foo|foo done” y la separa a partir del carácter
‘|’. Entonces utiliza lo que va antes de ‘|’ como el identificador del elemento DOM de la página y lo que va después
será el nuevo innerHTML del elemento que hemos referenciado. Esto significa que si tenemos una etiqueta div como esta:
Y eso es todo. Todo lo demás es construir sobre esto. Sustituir la sintáxis de la respuesta “id|texto” con un formato XML mucho
más rico y haciendolo más complejo. Antes de que empieces a utilizar grandes librerías “AJAX” prueba a crear tu propia funcionalidad, así
sabrás como funciona exactamente y será tan complicado como necesites. Muy a menudo descubrirás que no es necesario muho más
de lo que he explicado aquí.
Se puede ampliar esta solución para enviar varios parámetros en la solicitud, por ejemplo, lo que sería muy sencillo. Algo así como:
function sndReqArg(action,arg) {
HTTP.open(’get’, ‘RPC.php?action=’+action+’&arg=’+arg);
HTTP.onreadystatechange = handleResponse;
HTTP.send(null);
}
Y la función handleResponse que escribas puede hacer cosas mucho más interesantes que simplemente sustituir el contenido de un div.
-Rasmus
El framework más simple en PHP
17 de Octubre 2005 a las 3:44 pm | En PHPRuby on Rails ha generado mucha atención sobre los distintos frameworks para aplicaciones web. Prácticamente cualquier lenguaje de programación ofrece un framework que se apoya sobre ciertas librerías para ofrecer al desarrollador una forma más sencilla de crear sus aplicaciones. RoR y sus numerosos “clones” (Django, Cake o Catalyst son una muy buena solución para cierto tipo de aplicaciones web que hoy en día se dan muy a menudo.
Sin embargo, no siempre se adaptan a nuestras necesidades y es entonces cuando buscamos entre otros frameworks. O nos construimos el nuestro, que diablos. Si esa es tu intención quizás te interese conocer el más sencillo framework que puedes escribir en Apache + PHP. Sólo necesitas dos ficheros uno para hacer que Apache se porte como deseamos y sería el .htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*)$ dispatch.php?app=$1 [QSA]
y el fichero dispatch.php que contendrá las líneas
< ?PHP
include $_GET['app'];
?>
Este sencillo framework no sirve para nada y no se gana nada tal y como está, pero es el principio de muchos otros. Antes del include podriamos inicializar todos los objetos (plantillas, conexiones a bases de datos), sanear la entrada y muchas más cosas que se repetirán en todos tus scripts. Es el script que cualquiera de nosotros habrá escrito al tercer día de hacer cualquier cosa medio decente, a partir de ahí podemos crecer hacia donde querramos.
Y ya que estoy voy a aprovechar para señalar un viejo enlace que describe una estructura de una aplicación PHP.
Unas pocas cositas
14 de Octubre 2005 a las 3:58 pm | En PHP, bric-a-brac- w2box es un sistema de repositorio de fichero, para subir y gestionar ficheros adaptándose a Web 2.0 y con AJAX. Un proyecto web sin buzzwords no es un proyecto web.
- Configuración para manejar phpDocumentor en vim, ideal si documentamos nuestro código con esta potente herramienta.
- Un pequeño artículo de Joel Spolsky sobre como escoger las prioridades, centrandose en como escoger las nuevas funcionalidades de la siguiente versión del software y de una forma muy similar a las tarjetas de responsabilidad-colaboración y quizás también en la línea que llevan en FogCreek o 37 Signals.
- También en la línea no entres en una guerra que no puedas ganar, un artículo de A List Apart sobre sitios web que no deben desarrollarse.
Usando una caché para gestionar resultados en PHP
10 de Octubre 2005 a las 4:25 pm | En PHPEn DevShed con el artículoCaching Result Sets in PHP: The Barebones of a Caching Class desarrollan el principio de una clase que de soporte de caché para nuestras aplicaciones.
A veces necesitamos tener un servicio de caché para poder dar respuestas en tiempos razonables y no podemos usar otras herramientas como la cache de la base de datos (por ejemplo MySQL), bien porque no tenemos acceso a ellas o bien porque no nos dan los resultados que necesitamos. En esos casos un sistema de caché sobre los datos (no lo confundamos con un sistema como APC que cachea el código PHP compilado) puede sernos de mucha ayuda.
Todavía no he leido el artículo, pero estoy bastante contento con las clases de cache de PEAR, especialmente Cache Lite.
OpenID: una implementación en PHP
7 de Octubre 2005 a las 3:49 pm | En PHP, InterWebMe acabo de encontrar a través del CMS.org/archive/2005/09/08/flux-CMS-as-openid-server.html”>blog de Flux de la existencia de una implementación en PHP de OpenID en Videntity.org..
Para los que no lo conozcan, OpenID es un protocolo de identificación distribuido. Se diferencia de otros sistemas de autenticación OpenID es totalmente distribuido y solamente se ocupa de certificar que es quien dice ser, no lleva gestión de perfiles ni de permisos, que iría aparte.
Me parece un sistema muy interesante, orientado sobre todo a la web y por eso muy potente para las aplicaciones actuales. ¿Hay muchas cosas que soporten OpenID?
“Profiling” en PHP
28 de Septiembre 2005 a las 6:38 pm | En PHPUna entrada de las bitácoras de Barrapunto sobre como editar PHP con KDevelop me ha recordado un reciente artículo que quería enlazar: “Profiling your Apps with Xdebug and KCachegrind“, donde se explica como utilizar XDebug, y hay un muy interesante artículo introductorio.
Por cierto, del mismo autor un extenso e interesante artículo que ya se ha convertido en clásico sobre optimización en PHP.
PEAR AJAX: un tutorial
18 de Agosto 2005 a las 8:33 pm | En PHP¿Qué mejor forma de celebrar la aparición del paquete de PEAR HTML_AJAX que con un tutorial sobre HTML_AJAX? El autor tiene otros pequeños tutoriales sobre otras librerías, lo que nos permitiría buscar la que mejor se adapte a nuestras necesidades (todas en PHP).
Which PHP5 Framework is Your Favorite?
16 de Agosto 2005 a las 6:29 pm | En PHPEsa es la pregunta que se plantean en Slashdot ¿cuál es el framework de PHP5 favorito?. Ya mencioné una lista de enlaces sobre frameworks en PHP, pero pensé que también sería interesante. En las respuestas por supuesto también mencionan Cake, inspirado en RoR.
Editar los sitios (y 2)
9 de Agosto 2005 a las 11:54 am | En PHPHace muy poquito hablé sobre ello y ahora acaba de publicarse una primera versión funcional del editor XUL de HTML ¿merecerá la pena? Creo que sí.
PHP Frameworks
4 de Agosto 2005 a las 6:13 pm | En PHPA la hora de desarrollar una aplicación web en PHP, este lenguaje nos ofrece muchas posibilidades que se pueden ampliar con las librerías adicionales de PEAR pero para grandes proyectos necesitaremos una base más sólida, y tenemos la opción de crear nuestro framework o bien utilizar alguno ya existente. En PHP Kitchen dan una interesante lista de frameworks para PHP Frameworks, muchos de ellos con artículos sobre ellos.
PHP Naive Bayesian Filter - XHTML.net
23 de Junio 2005 a las 7:03 pm | En PHPPHP Naive Bayesian Filter - XHTML.net
Una librería que ofrece la funcionalidad de clasificar por algoritmos de Bayes.
Autenticación y gestión de sesiones
15 de Febrero 2005 a las 7:02 pm | En PHPfernand0 artículo sobre seguridad en la web, gestión de autenticaciones y de sesiones. Puede ser interesante. Aunque en nuestro framework particular quizás sería más cómodo utilizar funciones estándar como LiveUser que puede ser muy interesante.
isUTF
26 de Noviembre 2004 a las 6:56 pm | En PHPParece ser que en esta página Sinv:LanguageZh.php que no tengo ni idea de qué es hay una función capaz de saber si una cadena es UTF o no.
$ishigh = preg_match( ‘/[\x80-\xff]/’, $s);
$isutf = ($ishigh ? preg_match(
‘/^([\x00-\x7f]|[\xc0-\xdf][\x80-\xbf]|’ . ‘[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xf7][\x80-\xbf]{3})+$/’,
$s ) : true );
Todo será probarlo :)
Introducing PHP 5’s Standard Library [PHP & MySQL Tutorials]
22 de Septiembre 2004 a las 12:53 pm | En PHPUn artículo sobre una librería que ofrece funciones que pueden ser interesantes. Habría que echarle un vistazo para ver si puede complementar a PEAR.
Introducing PHP 5’s Standard Library [PHP & MySQL Tutorials]
Beginner’s Guide to PEAR — Using Smarty Templates With PEAR HTML_QuickForm
4 de Agosto 2004 a las 6:17 pm | En PHPHay un artículo muy interesante sobre el uso de Smarty con un módulo de PEAR: Beginner’s Guide to PEAR — Using Smarty Templates With PEAR HTML_QuickForm. También hay una introducción del uso de PEAR Quickform.
Powered by WordPress with Pool theme design by Borja Fernandez.
Entries and comments feeds.
Valid XHTML and CSS. ^Top^