it-swarm.com.de

Wie bekomme ich das aktuelle Datum und die aktuelle Uhrzeit in PHP?

Welche PHP -Funktion kann das aktuelle Datum/die aktuelle Uhrzeit zurückgeben?

731
Mike

Die Zeit würde von Ihrem Server abgehen. Eine einfache Problemumgehung besteht darin, die Zeitzone manuell einzustellen, indem die Funktionen date_default_timezone_set verwendet werden, bevor die Funktionen date() oder time() aufgerufen werden.

Ich bin in Melbourne, Australien also habe ich so etwas:

date_default_timezone_set('Australia/Melbourne');

Oder ein anderes Beispiel ist LA - US :

date_default_timezone_set('America/Los_Angeles');

Sie können auch sehen, in welcher Zeitzone sich der Server aktuell befindet:

date_default_timezone_get();

So etwas wie:

$timezone = date_default_timezone_get();
echo "The current server timezone is: " . $timezone;

Die kurze Antwort auf Ihre Frage wäre also:

// Change the line below to your timezone!
date_default_timezone_set('Australia/Melbourne');
$date = date('m/d/Y h:i:s a', time());

Dann wären alle Zeiten auf die Zeitzone, die Sie gerade eingestellt haben :)

564
NJ.
// Simply:
$date = date('Y-m-d H:i:s');

// Or:
$date = date('Y/m/d H:i:s');

// This would return the date in the following formats respectively:
$date = '2012-03-06 17:33:07';
// Or
$date = '2012/03/06 17:33:07';

/** 
 * This time is based on the default server time zone.
 * If you want the date in a different time zone,
 * say if you come from Nairobi, Kenya like I do, you can set
 * the time zone to Nairobi as shown below.
 */

date_default_timezone_set('Africa/Nairobi');

// Then call the date functions
$date = date('Y-m-d H:i:s');
// Or
$date = date('Y/m/d H:i:s');

// date_default_timezone_set() function is however
// supported by PHP version 5.1.0 or above.

Eine Zeitzonenreferenz finden Sie unter Liste der unterstützten Zeitzonen.

435

Seit PHP 5.2.0 können Sie dies auch mit OOP und DateTime() tun (natürlich, wenn Sie OOP bevorzugen):

$now = new DateTime();
echo $now->format('Y-m-d H:i:s');    // MySQL datetime format
echo $now->getTimestamp();           // Unix Timestamp -- Since PHP 5.3

Und die timezone angeben:

$now = new DateTime(null, new DateTimeZone('America/New_York'));
$now->setTimezone(new DateTimeZone('Europe/London'));    // Another way
echo $now->getTimezone();
171
Mahdi

Referenz: Hier ist ein Link

Dies kann zuverlässiger sein, als nur die Anzahl der Sekunden eines Tages oder eines Monats aufgrund der Sommerzeit zu einem Zeitstempel hinzuzufügen oder davon abzuziehen.

Der PHP Code

// Assuming today is March 10th, 2001, 5:16:18 pm, and that we are in the
// Mountain Standard Time (MST) Time Zone

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today = date("H:i:s");                         // 17:16:18
$today = date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (the MySQL DATETIME format)
81
ShapCyber

Sie können entweder die $_SERVER['REQUEST_TIME']-Variable (verfügbar seit PHP 5.1.0) oder die time()-Funktion verwenden, um den aktuellen Unix-Zeitstempel abzurufen.

58
Gumbo

PHP time () gibt einen aktuellen Unix-Zeitstempel zurück. Damit können Sie die Funktion date () verwenden, um sie an Ihre Bedürfnisse anzupassen.

$date = date('Format String', time());

Wie Paolo in den Kommentaren erwähnt hat, ist das zweite Argument überflüssig. Der folgende Ausschnitt entspricht dem obigen:

$date = date('Format String');
58
Rob Hruska

Sie können sowohl die Variable $_SERVER['REQUEST_TIME'] als auch die Funktion time() verwenden. Beide geben einen Unix-Zeitstempel zurück. 

In den meisten Fällen liefern diese beiden Lösungen genau dasselbe Unix Timestamp . Der Unterschied besteht darin, dass $_SERVER['REQUEST_TIME'] den Zeitstempel der letzten Serveranforderung und time() die aktuelle Uhrzeit zurückgibt. Je nach Anwendung kann dies zu geringfügigen Unterschieden in der Genauigkeit führen. In den meisten Fällen sollten jedoch beide Lösungen ausreichen.

Basierend auf Ihrem obigen Beispielcode möchten Sie diese Informationen formatieren, sobald Sie den Unix-Zeitstempel erhalten. Unformatierte Unix-Zeit sieht wie folgt aus: 1232659628

Um etwas zu erhalten, das funktioniert, können Sie es mit der Funktion date() formatieren.

Eine gute Referenz für die Verwendung der date()-Funktion finden Sie im PHP Manual .

Der folgende Code gibt beispielsweise ein Datum zurück, das wie folgt aussieht: 01/22/2009 04:35:00 pm:

echo date("m/d/Y h:i:s a", time());
45

Die Funktion date von PHP kann diese Aufgabe erfüllen.

Datum()

Beschreibung:

string date(string $format [, int $timestamp = time()])

Gibt eine Zeichenfolge zurück, die entsprechend der angegebenen Formatzeichenfolge mit dem angegebenen ganzzahligen Zeitstempel oder der aktuellen Uhrzeit formatiert ist, wenn kein Zeitstempel angegeben ist.

Beispiele:

$today = date("F j, Y, g:i a");               // March 10, 2001, 5:16 pm
$today = date("m.d.y");                       // 03.10.01
$today = date("j, n, Y");                     // 10, 3, 2001
$today = date("Ymd");                         // 20010310
$today = date('h-i-s, j-m-y, it is w Day');   // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.'); // it is the 10th day.
$today = date("D M j G:i:s T Y");             // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');   // 17:03:18 m is month
$today = date("H:i:s");                       // 17:16:18
$today = date("Y-m-d H:i:s");                 // 2001-03-10 17:16:18 (the MySQL DATETIME format)
43
Subodh Ghulaxe
 $date = new DateTime('now', new DateTimeZone('Asia/Kolkata'));
 echo $date->format('d-m-Y H:i:s');

Update

 //Also get am/pm in datetime:
 echo $date->format('d-m-Y H:i:s a'); // output 30-12-2013 10:16:15 am

Für das Datumsformat ist PHP date () Function nützlich.

23
Kailas

Benutzen:

$date = date('m/d/Y h:i:s a', time());

Es klappt.

19
Mike
echo date("d-m-Y H:i:sa");

Dieser Code ruft das Datum und die Uhrzeit des Servers ab, auf dem der Code ausgeführt wird.

16

Sie können dieses Format auch verwenden:

$date = date("d-m-Y");

Oder

$date = date("Y-m-d H:i:s");
14
Kalaivani M

Gemäß dem Artikel So erhalten Sie die aktuelle Datetime (JETZT) mit PHP, gibt es zwei Möglichkeiten, das aktuelle Datum abzurufen. Um die aktuelle Datumszeit (jetzt) ​​mit PHP zu erhalten, können Sie die date-Klasse mit jeder PHP -Version oder besser die datetime-Klasse mit PHP> = 5.2 verwenden.

Hier sind verschiedene Ausdrücke für das Datumsformat verfügbar.

Beispiel mit Datum

Dieser Ausdruck wird JETZT im Format Y-m-d H:i:s zurückgegeben.

<?php
    echo date('Y-m-d H:i:s');
?>

Beispiel mit der datetime-Klasse

Dieser Ausdruck wird JETZT im Format Y-m-d H:i:s zurückgegeben.

<?php
    $dt = new DateTime();
    echo $dt->format('Y-m-d H:i:s');
?>
13
David
<?php
echo "<b>".date('l\, F jS\, Y ')."</b>";
?>

Drucke so 

Sonntag, 9. Dezember 2012  

12
AMB

es ist sehr einfach

echo $ date = date ('Y-m-d H: i: s');

12
Juned Ansari
<?php
// Assuming today is March 10th, 2001, 5:16:18 pm, and that we are in the
// Mountain Standard Time (MST) Time Zone

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today = date("H:i:s");                         // 17:16:18
$today = date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (the MySQL DATETIME format)
?>
11
Mr. HK
date_default_timezone_set('Europe/Warsaw');
echo("<p class='time'>".date('H:i:s')."</p>");
echo("<p class='date'>".date('d/m/Y')."</p>");
9
Dariusz J
date(format, timestamp)

Die Funktion date gibt eine Zeichenfolge zurück, die entsprechend der angegebenen Formatzeichenfolge mit dem angegebenen ganzzahligen Zeitstempel oder der aktuellen Uhrzeit formatiert ist, wenn kein Zeitstempel angegeben ist. Mit anderen Worten, timestamp ist optional und hat standardmäßig den Wert von time ().

Und die Parameter sind -

format - Erforderlich. Gibt das Format des Zeitstempels an

zeitstempel - (Optional) Gibt einen Zeitstempel an. Standard ist das aktuelle Datum und die aktuelle Uhrzeit

Wie bekomme ich ein einfaches Datum?

Der erforderliche Formatparameter der date()-Funktion gibt an, wie die date (or time) formatiert werden soll.

Hier sind einige Zeichen, die häufig für Datumsangaben verwendet werden:

  1. d - Stellt den Tag des Monats dar (01 bis 31)
  2. m - Stellt einen Monat dar (01 bis 12)
  3. Y - Stellt ein Jahr dar (in vier Ziffern)
  4. l (Kleinbuchstabe 'L') - Stellt den Wochentag dar

Andere Zeichen wie "/", ".", or "-" können auch zwischen den Zeichen eingefügt werden, um weitere Formatierungen hinzuzufügen.

Das folgende Beispiel formatiert das heutige Datum auf drei verschiedene Arten:

<?php
    echo "Today is " . date("Y/m/d") . "<br>";
    echo "Today is " . date("Y.m.d") . "<br>";
    echo "Today is " . date("Y-m-d") . "<br>";
    echo "Today is " . date("l");
?>

Einige nützliche Links

9
Joomler

Sie können diesen Code verwenden:

<?php
    $currentDateTime = date('Y-m-d H:i:s');
    echo $currentDateTime;
?>
9
RichestSoft

Wenn Sie eine andere Zeitspanne wünschen, verwenden Sie bitte:

$tomorrow  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));
$lastmonth = mktime(0, 0, 0, date("m")-1, date("d"),   date("Y"));
$nextyear  = mktime(0, 0, 0, date("m"),   date("d"),   date("Y")+1);

date_default_timezone_set("Asia/Calcutta");
echo date("Y/m/d H:i:s");
9
Jaymin

Das Datumsformat hängt auch ab:

echo date("d/m/Y H:i:sa"); // 13/04/2017 19:38:15pm
9
hector teran

Stellen Sie Ihre Zeitzone ein:

date_default_timezone_set('Asia/Calcutta');

Rufen Sie dann die Datumsfunktionen auf

$date = date('Y-m-d H:i:s');
9
kkarayat

Ich habe festgestellt, dass der einfachste Weg, die aktuelle Uhrzeit in PHP zu ermitteln, in etwa so aussieht.

//Prints out something like 10:00am Just be sure to set your timezone correctly.
date_default_timezone_set("America/Chicago");
$TIME = date('G:ia'); 
7
Bullyen

Eine andere einfache Möglichkeit besteht darin, den Zeitstempel des aktuellen Datums und der aktuellen Uhrzeit zu ermitteln. Verwenden Sie die Funktion mktime ():

$now = mktime(); // Return timestamp of the current time

Dann können Sie dies in ein anderes Datumsformat konvertieren:

//// Prints something like: Thursday 26th of January 2017 01:12:36 PM
echo date('l jS \of F Y h:i:s A',$now);

Weitere Datumsformate finden Sie hier: http://php.net/manual/de/function.date.php

7
adespotos

Hier sind einige Zeichen, die häufig für Zeiten verwendet werden:

  1. h - 12-Stunden-Format einer Stunde mit führenden Nullen (01 bis 12)
  2. i - Minuten mit führenden Nullen (00 bis 59)
  3. s - Sekunden mit führenden Nullen (00 bis 59)
  4. a - Kleinbuchstabe Ante Meridiem und Post Meridiem (am oder pm)

Holen Sie sich Ihre Zeitzone

<?php
    date_default_timezone_set("America/New_York");
    echo "The time is " . date("h:i:sa");
?>

Überprüfen Sie dies aus (optional)

<?php
    $d = mktime(11, 14, 54, 8, 12, 2014);
    echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>

Für Datum

<?php
    echo "Today is " . date("Y/m/d") . ;
    echo "Today is " . date("Y.m.d") . ;
    echo "Today is " . date("Y-m-d") . ;
    echo "Today is " . date("l");
?>

Hier sind einige Zeichen, die häufig für Datumsangaben verwendet werden:

  1. d - Stellt den Tag des Monats dar (01 bis 31)
  2. m - Stellt einen Monat dar (01 bis 12)
  3. Y - Stellt ein Jahr dar (in vier Ziffern)
  4. l (Kleinbuchstabe 'L') - Stellt den Wochentag dar

Source-W3-Schulen

5
Raheel Khan

Für den neuen PHP Programmierer kann es verwirren, warum es viele Methoden gibt, um das aktuelle Datum und die aktuelle Uhrzeit abzurufen und welche in ihrem Projekt verwendet werden sollen.

1. date Methode (PHP 4, PHP 5, PHP 7)

Dies ist die gebräuchlichste und einfachste Methode, um Datum und Uhrzeit in PHP abzurufen.

// set the default timezone to use. Available since PHP 5.1
date_default_timezone_set('UTC');


// Prints something like: Monday
echo date("l");

// Prints something like: Monday 8th of August 2005 03:12:46 PM
echo date('l jS \of F Y h:i:s A');

// Prints: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " . date("l", mktime(0, 0, 0, 7, 1, 2000));

/* use the constants in the format parameter */
// prints something like: Wed, 25 Sep 2013 15:28:57 -0700
echo date(DATE_RFC2822);

// prints something like: 2000-07-01T00:00:00+00:00
echo date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000));

Mehr darüber erfahren Sie in hier

2. DateTime Klasse (PHP 5> = 5.2.0, PHP 7)

wenn Sie PHP mit OOP verwenden möchten, ist dies der beste Weg, um Datum und Uhrzeit abzurufen.

<?php
// Specified date/time in your computer's time zone.
$date = new DateTime('2000-01-01');
echo $date->format('Y-m-d H:i:sP') . "\n";

// Specified date/time in the specified time zone.
$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru'));
echo $date->format('Y-m-d H:i:sP') . "\n";

// Current date/time in your computer's time zone.
$date = new DateTime();
echo $date->format('Y-m-d H:i:sP') . "\n";

// Current date/time in the specified time zone.
$date = new DateTime(null, new DateTimeZone('Pacific/Nauru'));
echo $date->format('Y-m-d H:i:sP') . "\n";

// Using a UNIX timestamp.  Notice the result is in the UTC time zone.
$date = new DateTime('@946684800');
echo $date->format('Y-m-d H:i:sP') . "\n";

// Non-existent values roll over.
$date = new DateTime('2000-02-30');
echo $date->format('Y-m-d H:i:sP') . "\n";
?>

Mehr darüber erfahren Sie in hier

3. Carbon Date Zeitpaket

wenn Sie Composer , Laravel , Symfony oder ein anderes Framework verwenden, ist dies der beste Weg, um Datum und Uhrzeit zu ermitteln. Dieses Paket erweitert auch die DateTime-Klasse in PHP, sodass Sie die gesamte Methode in der Datetime-Klasse verwenden können. Dies ist in Frameworks wie laravel integriert, sodass Sie es nicht separat installieren müssen.

printf("Right now is %s", Carbon::now()->toDateTimeString());
printf("Right now in Vancouver is %s", Carbon::now('America/Vancouver')); // automatically converted to string
$tomorrow = Carbon::now()->addDay();
$lastWeek = Carbon::now()->subWeek();

// Carbon embed 823 languages:
echo $tomorrow->locale('fr')->isoFormat('dddd, MMMM Do YYYY, h:mm');
echo $tomorrow->locale('ar')->isoFormat('dddd, MMMM Do YYYY, h:mm');

$officialDate = Carbon::now()->toRfc2822String();

$howOldAmI = Carbon::createFromDate(1975, 5, 21)->age;

$noonTodayLondonTime = Carbon::createFromTime(12, 0, 0, 'Europe/London');

$internetWillBlowUpOn = Carbon::create(2038, 01, 19, 3, 14, 7, 'GMT');

if (Carbon::now()->isWeekend()) {
    echo 'Party!';
}
echo Carbon::now()->subMinutes(2)->diffForHumans(); // '2 minutes ago'

Mehr darüber erfahren Sie in hier

Ich hoffe, dies hilft und wenn Sie einen anderen Weg kennen, um Datum und Uhrzeit zu ermitteln, können Sie die Antwort jederzeit bearbeiten.

5
Supun Praneeth

Wenn Sie Bangladescher sind und die Uhrzeit von Dhaka erhalten möchten, verwenden Sie Folgendes:

$date = new DateTime();
$date->setTimeZone(new DateTimeZone("Asia/Dhaka"));
$get_datetime = $date->format('d.m.Y H:i:s');
5
A.A Noman
// Set the default timezone to use. Available since PHP 5.1
date_default_timezone_set('UTC');


// Prints something like: Monday
echo date("l");

// Prints something like: Monday 8th of August 2016 03:12:46 PM
echo date('l jS \of F Y h:i:s A');

// Prints: July 1, 2016 is on a Saturday
echo "July 1, 2016 is on a " . date("l", mktime(0, 0, 0, 7, 1, 2016));

/* Use the constants in the format parameter */
// Prints something like: Wed, 25 Sep 2013 15:28:57 -0700
echo date(DATE_RFC2822);

// Prints something like: 2016-07-01T00:00:00+00:00
echo date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000));
5
Elyor

Wenn Sie das Datum wie12-3-2016erhalten möchten, trennen Sie jeden Tag-, Monats- und Jahreswert.

$day = date("d");
$month = date("m");
$year = date("y");
print "date" . $day . "-" . $month . "-" . $year;
4
Pir Fahim Shah

PHP gibt die aktuelle Zeit in Sekunden zurück. Sie müssen sie in einem beliebigen Format formatieren.

<?php
    // time() returns current time in seconds
    $in_seconds = time();

    // strftime - Format a local time/date according to locale settings
    echo strftime("%m/%d/%y", $in_seconds);
?>

Referenz: http://php.net/manual/de/function.strftime.php

3
Gnanasekar S

Wir können die date-Funktion verwenden und die Standard-Zeitzone einstellen:

<?php
    date_default_timezone_set("Asia/Kolkata");
    echo "Today is " . date("Y/m/d") . "<br>";
    echo "Today is " . date("Y.m.d") . "<br>";
    echo "Today is " . date("Y-m-d") . "<br>";
    echo "Today is " . date("l");
    echo "The time is " . date("h:i:sa");
?>
3

Normalerweise ist diese Datumsfunktion für alle nützlich: Datum ("Y/m/d");

Die Zeit ist jedoch etwas anderes, da die Zeitfunktion entweder von der PHP -Version oder dem Systemdatum abhängt.

Verwenden Sie es also wahrscheinlich so, um unsere eigene Zeitzone zu erhalten:

$date = new DateTime('now', new DateTimeZone('Asia/Kolkata'));
echo $date->format('H:m:s');

Diese Funktion zeigt die 24-Stunden-Zeit.

3
Meena Arumugam

Die aktuelle Uhrzeit und das aktuelle Datum erhalten Sie am besten mit der Funktion date in PHP:

$date = date('FORMAT'); // FORMAT E.g.: Y-m-d H:i:s

$current_date = date('Y-m-d H:i:s');

Mit dem Unix-Zeitstempel:

$now_date = date('FORMAT', time()); // FORMAT Eg : Y-m-d H:i:s

So legen Sie die Serverzeitzone fest:

date_default_timezone_set('Asia/Calcutta');

Eine andere Zeitzonenliste ist hier .

3
Arthi Rajgopal

Sehr einfach

date_default_timezone_set('Asia/Kolkata');
$date = date('m/d/Y H:i:s', time());
1
echo $today = date('y-m-d');

Dies wird das heutige Datum zurückgeben.

0
Ajay Katariya

Linux-Serverzeit und PHP time () Zeitzone wie folgt:

<?php
    putenv("TZ=Asia/Kabul");
    $t = time();
    echo date('d/m/Y H:i:sa', $t);
?>
0
Ahmad Shakib