¿Cómo puedo encontrar la primera y la última fecha en un mes usando PHP? Por ejemplo, hoy es el 21 de abril de 2010; Quiero encontrar 1 de abril de 2010 y el 30 de abril de 2010.¿Cómo puedo encontrar la primera y la última fecha en un mes usando PHP?
Respuesta
La forma más sencilla es utilizar date
, lo que le permite mezclar los valores codificados de forma rígida con los extraídos de una marca de tiempo. Si no proporciona una marca de tiempo, asume la fecha y hora actuales.
// Current timestamp is assumed, so these find first and last day of THIS month
$first_day_this_month = date('m-01-Y'); // hard-coded '01' for first day
$last_day_this_month = date('m-t-Y');
// With timestamp, this gets last day of April 2010
$last_day_april_2010 = date('m-t-Y', strtotime('April 21, 2010'));
date()
Busca la cadena que se le da, como 'm-t-Y'
, para los símbolos específicos, y los sustituye por los valores de su marca de tiempo. Entonces podemos usar esos símbolos para extraer los valores y el formato que queremos de la marca de tiempo. En los ejemplos anteriores:
Y
le da el año de 4 dígitos de la marca de tiempo ('2010')m
le da el mes numérico de la marca de tiempo, con un cero ('04')t
le da el número de días del mes de la fecha y hora ('30')
usted puede ser creativo con esto. Por ejemplo, para obtener el primero y el último segundo de un mes:
$timestamp = strtotime('February 2012');
$first_second = date('m-01-Y 00:00:00', $timestamp);
$last_second = date('m-t-Y 12:59:59', $timestamp); // A leap year!
Ver http://php.net/manual/en/function.date.php a otros símbolos y más detalles.
Solo agregando información aquí, tuve problemas para convertir datan de marca de tiempo Unix con este formato, se fijó mediante el uso de formato 'dmY' en lugar de 'MDY' .. también el último segundo será '23: 59: 59' en lugar de '12: 59: 59' .. Gracias –
esto le dará el último día del mes:
function lastday($month = '', $year = '') {
if (empty($month)) {
$month = date('m');
}
if (empty($year)) {
$year = date('Y');
}
$result = strtotime("{$year}-{$month}-01");
$result = strtotime('-1 second', strtotime('+1 month', $result));
return date('Y-m-d', $result);
}
y el primer día:
function firstDay($month = '', $year = '')
{
if (empty($month)) {
$month = date('m');
}
if (empty($year)) {
$year = date('Y');
}
$result = strtotime("{$year}-{$month}-01");
return date('Y-m-d', $result);
}
Puede use la función de fecha para encontrar cuántos días en un mes hay.
// Get the timestamp for the date/month in question.
$ts = strtotime('April 2010');
echo date('t', $ts);
// Result: 30, therefore, April 30, 2010 is the last day of that month.
Espero que ayude.
EDITAR: Después de leer la respuesta de Luis, se me ocurrió que podría quererla en el formato correcto (AA-mm-dd). Puede ser obvio, pero no está de más mencionar:
// After the above code
echo date('Y-m-t', $ts);
simple uno
- Y - Una representación numérica completa de un año, 4 dígitos
- m - Representación numérica de un mes, con ceros a la izquierda
- t - número de días en el mes dado
Referencia - http://www.php.net/manual/en/function.date.php
<?php
echo 'First Date = ' . date('Y-m-01') . '<br />';
echo 'Last Date = ' . date('Y-m-t') . '<br />';
?>
Para obtener la primera y la última fecha de Last Month
;
$dateBegin = strtotime("first day of last month");
$dateEnd = strtotime("last day of last month");
echo date("D-F-Y", $dateBegin);
echo "<br>";
echo date("D-F-Y", $dateEnd);
Para específico meses y años fecha de uso() como lenguaje natural de la siguiente manera
$first_date = date('d-m-Y',strtotime('first day of april 2010'));
$last_date = date('d-m-Y',strtotime('last day of april 2010'));
// Isn't it simple way?
pero para el mes actual
$first_date = date('d-m-Y',strtotime('first day of this month'));
$last_date = date('d-m-Y',strtotime('last day of this month'));
$month=01;
$year=2015;
$num = cal_days_in_month(CAL_GREGORIAN, $month, $year);
echo $num;
pantalla 31 último día de fecha
Si usted quiere encontrar el primer día y el último día de la variable de fecha especificado, entonces usted puede hacer esto, como a continuación:
$date = '2012-02-12';//your given date
$first_date_find = strtotime(date("Y-m-d", strtotime($date)) . ", first day of this month");
echo $first_date = date("Y-m-d",$first_date_find);
$last_date_find = strtotime(date("Y-m-d", strtotime($date)) . ", last day of this month");
echo $last_date = date("Y-m-d",$last_date_find);
para la fecha actual acaba de simple uso de este
$first_date = date('Y-m-d',strtotime('first day of this month'));
$last_date = date('Y-m-d',strtotime('last day of this month'));
mucho por tu respuesta. Acabas de resolver el problema exacto que estaba teniendo, "seleccionando la primera fecha del mes dado". – Seeker
Es un placer :) – Faisal
Puede reemplazar la fecha ("Y-m-d", strtotime (fecha $)) con fecha $, ya que son los mismos pero se escribe menos código. – nicolascolman
En formato simple
$curMonth = date('F');
$curYear = date('Y');
$timestamp = strtotime($curMonth.' '.$curYear);
$first_second = date('Y-m-01 00:00:00', $timestamp);
$last_second = date('Y-m-t 12:59:59', $timestamp);
Para el próximo mes cambie $ curMonth a $ curMonth = date ('F', strtotime ("+ 1 months"));
- 1. primera y última fecha del mes anterior
- 2. ¿Cómo obtener la primera fecha y la última fecha del mes anterior? (Java)
- 3. En PHP, ¿hay alguna manera fácil de obtener la primera y la última fecha de un mes?
- 4. ¿Cómo puedo encontrar la primera y la última aparición de un elemento en un data.frame?
- 5. Obteniendo la primera/última fecha de la semana
- 6. ¿Cómo obtener la última fecha de un mes en particular con JodaTime?
- 7. PHP while loop encontrar la última fila
- 8. Cómo cortar la primera y la última n columnas?
- 9. Usando git diff en el mismo archivo entre la primera y la última confirmación
- 10. primera fecha del mes anterior a la fecha actual en JavaScript
- 11. Cómo detectar la primera y la última línea durante reader.readLine()?
- 12. ¿Cómo se selecciona la última fecha del mes seleccionado en C# .net?
- 13. la fecha de la subasta en un mes
- 14. ¿Cómo manejar la fecha y la hora con PHP?
- 15. Encontrar Primer día de la semana a través de php
- 16. ¿Cómo puedo encontrar la diferencia entre dos fechas usando Javascript
- 17. Comparar la fecha actual con la fecha y hora almacenada usando el mes de un año solamente
- 18. ¿Cómo encontrar un mes después de una fecha con django?
- 19. obtener la fecha actual y la fecha después de dos meses en php
- 20. ¿Cómo encontrar la última fusión en git?
- 21. La mejor manera de encontrar la última ID insertada en mysql usando php
- 22. Javascript expresión regular: eliminar primera y la última barra
- 23. ¿Cómo obtengo la primera fecha de un trimestre en MySQL?
- 24. PHP: ¿la forma más sencilla de obtener la fecha del mes 6 meses anteriores a la primera?
- 25. Obtenga la primera y la última clase con jQuery
- 26. SQL: Cómo producir la fecha siguiente dado mes y día
- 27. Cómo encontrar la semana del mes
- 28. Obteniendo la última fecha de modificación de archivos en el directorio usando PHP
- 29. Cómo encontrar la primera aparición con LINQ
- 30. ¿Cómo puedo encontrar la última fecha de modificación, usuario modificado de un procedimiento almacenado en SQL Server 2008
posible duplicar: http://stackoverflow.com/questions/1686724/how-to-find-the-last-day-of-the-month-from-date –