Estoy intentando crear una matriz a partir de hoy y volver los últimos 30 días con PHP y estoy teniendo problemas. Puedo estimar pero no conozco una buena manera de hacerlo y teniendo en cuenta la cantidad de días del mes anterior, etc. ¿Alguien tiene una buena solución? No puedo acercarme, pero necesito asegurarme de que sea 100% exacto.Crear una matriz de los últimos 30 días con PHP
Respuesta
Prueba esto:
<?php
$d = array();
for($i = 0; $i < 30; $i++)
$d[] = date("d", strtotime('-'. $i .' days'));
?>
Puede usar el tiempo para controlar los días:
for ($i = 0; $i < 30; $i++)
{
$timestamp = time();
$tm = 86400 * $i; // 60 * 60 * 24 = 86400 = 1 day in seconds
$tm = $timestamp - $tm;
$the_date = date("m/d/Y", $tm);
}
Ahora, dentro del bucle for puede utilizar la variable $ the_date con qué propósitos es posible que desee . :-)
Pedrin, tenga cuidado con este método usando el tiempo. Solía hacer esto, luego noté que no se calculará correctamente en ciertos momentos relacionados con el horario de ahorro de luz diurna. En su lugar, aconsejaría utilizar la función strtotime. -Matt – Matt
te falta un $ antes de i ++ ... gracias por el bucle útil :) –
$d = array();
for($i = 0; $i < 30; $i++)
array_unshift($d,strtotime('-'. $i .' days'));
Para aquellos que quieren mostrar las ventas de los últimos X días,
As asked in this closed question (https://stackoverflow.com/questions/11193191/how-to-get-last-7-days-using-php#=), esto funcionó para mí.
$sales = Sale::find_all();//the sales object or array
for($i=0; $i<7; $i++){
$sale_sum = 0; //sum of sale initial
if($i==0){
$day = strtotime("today");
} else {
$day = strtotime("$i days ago");
}
$thisDayInWords = strftime("%A", $day);
foreach($sales as $sale){
$date = strtotime($sale->date_of_sale)); //May 30th 2018 10:00:00 AM
$dateInWords = strftime("%A", $date);
if($dateInWords == $thisDayInWords){
$sale_sum += $sale->total_sale;//add only sales of this date... or whatever
}
}
//display the results of each day's sale
echo $thisDayInWords."-".$sale_sum; ?>
}
Antes te enojas: coloqué esta respuesta aquí para ayudar a alguien que se dirige aquí a partir de que se trate. No pude responder allí :(
- 1. MySQL Query - Registros entre hoy y los últimos 30 días
- 2. Buscar artículos de trabajo que fueron asignados a X en los últimos 30 días
- 3. Obteniendo los últimos 5 elementos de una matriz php
- 4. PHP conseguir los 3 últimos elementos de una matriz
- 5. MySQL SELECT últimos días?
- 6. Sqlite SELECCIONAR * durante los últimos 7 días
- 7. C# código de ejecución cada 30 días
- 8. ¿Cómo obtener los últimos n elementos en una matriz de PHP como otra matriz?
- 9. Creación de objetos QuerySet de los últimos 7 días
- 10. ¿Cómo consultar para obtener totales de los últimos siete días?
- 11. cómo crear una matriz de un nombre de días de la semana en php
- 12. Registros de recuento creados en los últimos 7 días
- 13. ¿Cómo solo habilito los últimos días de meses con Datepicker Jquery?
- 14. Seleccionando los últimos 7 días desde Ahora() en MYSQL
- 15. seleccionando registros en mysql db desde 1, 7 y 30 días con datetime y php
- 16. PHP - Crear una matriz de cadena
- 17. mysql seleccione las fechas en el rango de 30 días
- 18. Longitud de Sprint - 2 semanas vs 30 días
- 19. PHP: Crear una matriz para un rango
- 20. eliminando el límite de 30 días de memcached
- 21. Agregue 30 segundos al tiempo con PHP
- 22. Crear una matriz con $ x elementos en PHP
- 23. encontrar si la fecha es más de 30 días
- 24. php - crear, dinámicamente, una matriz inicializada con N elementos nulos
- 25. MYSQL Query: última marca de tiempo + valor único de los últimos 30 minutos
- 26. Lista de todos los archivos registrados en TFS por un usuario en los últimos días
- 27. C# 30 días a partir de la fecha de hoy
- 28. ¿Cómo llegar 30 días antes de la fecha actual?
- 29. Javascript - Establecer la fecha 30 días a partir de ahora
- 30. PHP crear una matriz multidimensional de una matriz con datos relacionales
Creo que quería decir que la fecha se asignará a $ d [i], no $ d []. – Matt
Matt: No $ d [] es mejor. – OIS
Para los que no Sabes, lo que '$ d []' hace aquí es agregar resultado al final de la matriz. – Ren