php - wordpress bloginfo




如何在PHP中獲取當前的日期和時間? (20)

其非常簡單

echo $ date = date('Ymd H:i:s');

哪個PHP函數可以返回當前日期/時間?


PHP會以秒為單位返回當前時間,您需要以任何格式格式化它們

<?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);
?>

參考: strftime()strftime()


PHP的time()返回當前的unix時間戳。 有了這個,你可以使用date()函數將其格式化為你的需要。

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

正如保羅在評論中提到的那樣,第二個論點是多餘的。 以下片段與上面的片段相同:

$date = date('Format String');

你也可以使用這種格式

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

要么

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

如果你想要一個不同的時間表,請使用:

$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");

如果你是孟加拉人。 如果你想得到達卡的時間,然後使用它

$date = new DateTime();
$date->setTimeZone(new DateTimeZone("Asia/Dhaka"));
$get_datetime = $date->format('d.m.Y H:i:s');

從PHP 5.2.0你可以使用OOPDateTime()來完成它(當然如果你更喜歡OOP的話):

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

並指定timezone

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


您可以同時使用$ _SERVER ['REQUEST_TIME']變量或** time()**函數。 這兩個都會返回一個Unix時間戳。

大多數情況下,這兩種解決方案將產生完全相同的Unix時間戳。 它們之間的區別在於$ _SERVER ['REQUEST_TIME']返回最近服務器請求的時間戳,time()返回當前時間。 根據您的應用,這可能會在準確性方面造成細微差異,但對於大多數情況下,這些解決方案都應該足夠。

根據上面的示例代碼,一旦獲得Unix時間戳,您將希望格式化此信息。 未格式化的Unix時間戳看起來像這樣...

Unix時間戳:1232659628

所以為了得到可行的東西,你可以使用date()函數來設置它的格式。

關於如何使用date()函數的很好的參考資料位於PHP手冊頁,這裡...

http://us.php.net/date

作為一個例子,下面的代碼返回一個看起來像這樣的日期 -

01/22/2009 04:35:00 pm

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

我發現用PHP獲取當前時間最簡單的方法就是這樣。

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

日期格式也取決於:

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

時間將由你的服務器時間決定。 一個簡單的解決方法是在date()time()函數被調用之前通過使用date_default_timezone_set手動設置時區。

我在澳大利亞的墨爾本,所以我有這樣的事情:

date_default_timezone_set('Australia/Melbourne');

或者另一個例子是洛杉磯 - US

date_default_timezone_set('America/Los_Angeles');

您還可以通過以下方式查看服務器當前的時區:

date_default_timezone_get();

所以像這樣:

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

所以你的問題的簡短答案是:

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

那麼所有的時間將是你剛剛設置的時區:)


設置您的時區:

date_default_timezone_set('Asia/Calcutta');

然後調用日期函數

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

這可能會幫助你。

以下是一些常用於時代的字符:

  1. 小時 - 12小時格式,前導零(1至12)
  2. 我 - 分鐘前導零(00至59)
  3. 秒 - 帶前導零的秒(00到59)
  4. a - 小寫前綴meridiem和後期meridiem(上午或下午)

獲取您的時區

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

檢查了這一點(可選)

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

為日期

<?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");
?>

以下是日期常用的一些字符:

  1. d - 表示月份的日期(01至31)
  2. m - 代表一個月(01至12)
  3. Y - 代表一年(四位數字)
  4. l(小寫'L') - 表示星期幾

Source-W3-Schools


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

更新

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

對於日期格式, PHP date()函數很有用。


 We can use date function and set default timezone.

 <?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");

 ?>

<?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)
?>

<?php
echo "<b>".date('l\, F jS\, Y ')."</b>";
?>

像這樣打印

2012年12月9日星期日


date(format,timestamp)

Date函數根據給定格式字符串使用給定的整數時間戳或當前時間(如果沒有給出時間戳)返回格式化字符串。 換句話說,時間戳是可選的,並且默認為time()的值。

參數是 -

格式 - 必需。 指定時間戳的格式

timestamp - (可選)指定時間戳。 默認值是當前的日期和時間

如何獲得簡單的日期

date()函數所需的格式參數指定如何格式化date (or time)

以下是日期常用的一些字符:

  1. d - 表示月份的日期(01至31)
  2. m - 代表一個月(01至12)
  3. Y - 代表一年(四位數字)
  4. l(小寫'L') - 表示星期幾

其他字符,如"/", ".", or "-"也可以插入字符之間以添加其他格式。

下面的例子以三種不同的方式格式化今天的日期:

<?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");
?>

一些有用的鏈接


date_default_timezone_set('Europe/Warsaw');
echo("<p class='time'>".date('H:i:s')."</p>");
echo("<p class='date'>".date('d/m/Y')."</p>");




datetime