El tiempo es oro

Jose A. Pedroche

UI/UX Designer

Abr 2012
Abr 11, 2012

Dice el refrán que «El tiempo es oro», y que cierto es. El tiempo es el camino sobre el que discurre la vida, y es un camino limitado y desconocido para cada uno (sino, te invito a que veas la película IN TIME, y ya me cuentas).

Bajo esta perspectiva, en muchos proyectos, el cliente solicita funciones que agilicen los resultados de sus consultas, en las aplicaciones que desarrollamos para ellos. Es decir, conseguir la información con el mínimo tiempo posible invertido.
Para eso, voy a compartir unas funciones que trabaja precisamente con eso, con el tiempo. Se trata de las funciones DAY, MONTH y YEAR de PHP.

Es habitual querer ver ciertos resultados de el último mes, el último año, etc. de una manera rápida y sencilla, sin tener que estar seleccionando en un calendario un día de inicio, y otro final, que significa estar pinchando en un listado el día, el mes, etc. «Quiero ver de manera rápida cuánto hemos facturado en el último mes», por ejemplo.

Lo primero que debemos conocer es la fecha actual. Eso es bien sencillo con la función date() de PHP.
Guardamos en 2 variables estos valores, de esta manera:

$present_month = date(«m»);
$present_year = date(«Y»);

Ahora, con estos valores ya almacenados, podemos incluir en nuestra sentencia SQL:

SELECT * FROM nombre_tabla WHERE Month(campo_fecha) = $present_month AND Year(campo_fecha) = $present_year

Lo único de lo que tenemos que asegurarnos es que el campo_fecha, sea un timestamp. De esta manera, lo que le estamos diciendo a la BBDD es que nos muestre los registros cuyo mes y año del campo campo_fecha coincidan con el mes y año en el que estamos actualmente.

¿Y si queremos que nos muestre justo los datos del mes anterior al nuestro, o los datos del mismo mes, pero el año anterior?, pues es tan sencillo como añadir un -1 a las variables declaradas anteriormente:
$present_month = date(«m»)-1;
o
$present_year = date(«Y»)-1;

También podemos hacer que ese mes o año sea una variable, enviada por GET o POST, de manera que podemos dejar total libertad al cliente para elegir el mes o el año del que quiere hacer la consulta:
$present_month = $_GET[‘month’];
$present_year = $_GET[‘year’];

Pero para esto, necesitaríamos hacer un formulario, con un campo que indique el mes y otro que indique el año, y tener que enviar estos datos para poder recogerlos luego, y hemos dicho que esto era para ahorrar tiempo, ¿no? 🙂

También te puede interesar

10 Tips de Clean Code

10 Tips de Clean Code

Escribir clean code o código limpio y claro no es solo una práctica estética, sino una necesidad crítica para la mantenibilidad y la eficiencia del desarrollo de software. Un código bien escrito facilita a otros desarrolladores (o incluso a ti en el futuro) entender,...

La importancia del prototipado: Figma

La importancia del prototipado: Figma

La importancia del prototipado: Figma Durante el proceso del desarrollo de aplicaciones y diseño web, la eficiencia y la efectividad en la fase de concepción de un proyecto son cruciales. Por eso el prototipado no es simplemente una etapa preliminar más, sino que es...