Wie kann ich das erste und letzte Datum in einem Monat mit PHP finden? Zum Beispiel ist heute der 21. April 2010; Ich möchte 1. April finden, die 2010 und dem 30. April 2010Wie kann ich das erste und letzte Datum in einem Monat mit PHP finden?
Antwort
Der einfachste Weg ist date
, zu verwenden, die Sie hartcodierte Werte mit denen aus einem Zeitstempel extrahiert mischen lässt. Wenn Sie keinen Zeitstempel angeben, wird das aktuelle Datum und die Uhrzeit angenommen.
// 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()
sucht die Zeichenfolge es gegeben, wie 'm-t-Y'
, für bestimmte Symbole und ersetzt sie mit den Werten aus seinem Zeitstempel. Daher können wir diese Symbole verwenden, um die gewünschten Werte und Formatierungen aus dem Zeitstempel zu extrahieren. In den obigen Beispielen:
Y
gibt Ihnen das 4-stellige Jahr aus dem Zeitstempel (‚2010‘)m
gibt Ihnen den numerischen Monat aus dem Zeitstempel, mit einer führenden Null (‚04‘)t
gibt Ihnen die Anzahl der Tage im Monat Zeitstempel (‚30‘)
Sie können mit diesem kreativ sein. Um zum Beispiel die erste und die letzte Sekunde von einem Monat zu bekommen:
$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!
Siehe http://php.net/manual/en/function.date.php für andere Symbole und weitere Details.
Ich fügte nur Info hier hinzu, ich hatte Probleme zu konvertieren zurück zu Unix Timestamp mit diesem Format, wurde mit 'dmY' Format statt 'mdY' .. behoben. Auch die letzte Sekunde wird '23: 59: 59 'statt '12: 59: 59' .. –
Dadurch werden Sie den letzten Tag des Monats geben:
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);
}
und dem ersten Tag:
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);
}
Sie können Verwenden Sie die Datumsfunktion, um zu ermitteln, wie viele Tage in einem Monat es sind.
// 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.
Hoffe, dass hilft.
EDIT: Nachdem ich Luis Antwort gelesen hatte, fiel mir auf, dass Sie es im richtigen Format (YY-mm-dd) wollen. Es mag offensichtlich sein, aber verletzt nicht zu erwähnen:
// After the above code
echo date('Y-m-t', $ts);
Einfach ein
- Y - Eine vollständige numerische Darstellung eines Jahres, 4-stellig
- m - Numerische Darstellung eines Monats, mit führenden Nullen
- t - Anzahl der Tage im jeweiligen Monat
Referenz - 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 />';
?>
Um das erste und letzte Datum von Last Month
zu erhalten;
$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);
Für spezifischen Monat und Jahr Verwendung date() als natürliche Sprache als
folgende$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?
aber für Aktuellen Monat
$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;
Anzeige 31 letzter Tag des Datums
Wenn Sie den ersten Tag und letzten Tag von dem angegebenen Datum Variable zu finden, dann können Sie dies wie unten tun:
$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);
Für das aktuelle Datum nur einfache Verwendung dieses
$first_date = date('Y-m-d',strtotime('first day of this month'));
$last_date = date('Y-m-d',strtotime('last day of this month'));
Vielen Dank viel für Ihre Antwort. Sie haben gerade das genaue Problem gelöst, das ich hatte, "das erste Datum des angegebenen Monats auswählend." – Seeker
Es ist mir ein Vergnügen :) – Faisal
Sie können Datum ("Y-m-d", strtotime ($ date)) durch $ date ersetzen, weil sie gleich sind, aber Sie weniger Code schreiben. – nicolascolman
In einfachen Format
$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);
Für nächsten Monat Änderung $ curMonth zu $ curMonth = Datum ('F', strtotime ("+ 1 Monate"));
- 1. Wie kann ich das erste und letzte Vorkommen eines Elements in einem data.frame finden?
- 2. SQL Server 2005 Erste und letzte Datum für einen beliebigen Monat in einem Jahr
- 3. Erhalten Sie das erste Datum und das letzte Datum des aktuellen Quartals in Python?
- 4. Wie bekomme ich das erste und letzte Element von Array
- 5. Wie kann ich das nächste Datensatzdatum von einem Datum und das letzte Datensatzdatum von einem Datum abrufen?
- 6. Finden Sie das erste Dokument nach einem bestimmten Datum
- 7. Erste Uhrzeit und das Datum aus Zeitstempel mit PHP
- 8. Das erste und letzte Element in einem Groovy erkennen {} closure
- 9. PHP Codeigniter Seitennummer fehlt Erste und Letzte
- 10. Wie kann ich das letzte Zeichen eines Textfeldes finden?
- 11. Wie kann ich das erste und das letzte Element in einer foreach-Schleife erkennen?
- 12. Wie kann ich das erste Commit einer Verzweigung finden?
- 13. Streifen Sie das letzte und erste Zeichen von einem String
- 14. Datum und Monat vom angegebenen Datum trennen
- 15. Python Wie kann ich erste und letzte doppelte Anführungszeichen
- 16. erste und letzte Beobachtungen in sas
- 17. Gruppe Datum im Monat und Jahr php Datum
- 18. Das erste Mal-In und das letzte Time-Out für den folgenden Tag basierend auf einem Datum Sammlung mit linq
- 19. Wie kann ich die erste und letzte Woche jedes Monats in SAS auswählen?
- 20. PHP Datum finden, das einem Zeitachsenzeitraum am nächsten ist
- 21. Wie kann ich das erste und letzte Element zum Lesen von Textdatei keine Zeichenfolge mit Doppel
- 22. Erste das letzte Element einer Ebene in einem Multiindex
- 23. Das erste und letzte Element in einem Python für die Schleife abrufen
- 24. Wie findet man das letzte vorherige Geschwister gleich und das erste nächste Geschwister gleich?
- 25. Wie kann ich das größere als das Datum mit dem verfügbaren Datum finden
- 26. Wie kann ich Jahr und Monat zusammen mit Datum in SSRS-Datumsauswahl (Kalender) auswählen?
- 27. Wie kann ich die erste und die letzte Zeile einer Datei in PHP
- 28. Finden Sie das Beitrittsdatum und den Monat zwischen einem Bereich von Datum
- 29. Ich möchte einen Monat mit SqlContext zu einem Datum hinzufügen
- 30. Wie erste und letzte Tag des Vorheriger Monat mit Kohlenstoff bekommen - Laravel
möglich duplizieren: http://StackOverflow.com/Questions/1686724/How-to-find-the-Last-day-of-the-month-from-date –