¿Conoces la clase “DateTime”?
Es muy dificil conocer todas las funcionalidades que nos puede ofrecer un lenguaje, ya que leer el manual con el listado de funciones de arriba a abajo es tan divertido como leer la guía telefónica. Generalmente cuando tenemos un problema para resolver vamos a buscar en la sección correspondiente, según el tema, y listo (arrays, matemáticas, strings, etc). Lo importante muchas veces es, no solo saber de memoria, sino, saber donde buscar (o como dice el viejo dicho, “lo más importante es tener el teléfono de quién sabe”, aunque esto lo único que hace es que evitemos aprender a valernos por nosotros mismos
).
Siempre creí que la evolución natural de PHP debería ser juntar todas las funciones “sueltas” del lenguaje en formato “estructurado” y agruparlas en clases “base” como tiene cualquier lenguaje 100% Orientado a Objetos (tienen clases como String, Integer, etc, y si usamos un IDE veremos fácilmente toda la lista de métodos disponibles que se aplican a ese contexto concreto).
Nota al margen: hace unos años hicimos un experimento educativo y varios de mis alumnos de mi primer taller piloto a distancia hicieron un pequeño proyecto final que consistía desarrollar clases de tipo “wrapper” que cumplieran este objetivo (siguiendo el API de Java).
Espero que algún día PHP6 o 7 incorpore por defecto este tipo de organización que nos beneficiará a todos los desarrolladores.
De paso les comento que a veces, en raras ocasiones, podemos descubrir en el manual clases que vienen por defecto en PHP, por ejemplo, DateTime:
date_default_timezone_set(‘America/Argentina/Buenos_Aires’);
$date = new DateTime(“2009-02-28″);
$date->modify(“+1 day”);
echo $date->format(“Y-m-d”);
$date = new DateTime(“2009-01-01″);
$date->modify(“-1 day”);
echo $date->format(“Y-m-d”);
// Salida:
//
// 2009-03-01
// 2008-12-31
Y Netbeans detecta todos sus elementos en la ayuda contextual:
Más información (obviamente): Manual Oficial de PHP
PD: y nunca te olvides de conocer las Standard PHP Library (SPL)



February 16th, 2010 at 2:50 pm
Seria bueno que adicione más articulos para conocer su profundidad como desarrollador y analista que usted se jacta al principio. Cuando estás cobrando por ejemplo un sistema contable completo via web? como el concar pero más funcional????
May 31st, 2010 at 12:41 pm
You post great articles. Bookmarked !
October 5th, 2010 at 10:37 am
Thanks very much for posting this great information! I am looking forward to reading more!
October 31st, 2010 at 11:16 am
Dear mate. I seriously love this writing and your current web site all in all! That article is very clearly created and also easily understandable. Your Blog theme is awesome as well! Would be great to learn exactly where My partner and i are able acquire it. Please continue to keep up the great job. We need more these web masters such as you online and much less spammers. Fantastic mate!
December 6th, 2010 at 4:44 pm
Hello I’m itching to know if I may use this post on one of my blogs if I link back to you? Thanks
January 13th, 2011 at 11:12 am
You make blogging look like a walk in the park! I’ve been trying to blog daily but I just cant find writing material.. you’re an inspiration to me and i’m sure many others!