簡體   English   中英

從 php 日期獲取日期格式,如“Ymd H:i:s”

[英]Get date format like “Y-m-d H:i:s” from a php date

有人知道從包含日期格式的日期中獲取字符串的方法嗎?

<?php
    $date = date ("2009-10-16 21:30:45");

    // smething like this?
    print date_format ($date);
?>

我問這個是因為我想優化我寫的這個函數,通常是從服務器獲取不同時區的日期,而不做特定的事情

<?php
function get_timezone_offset ($timezone, $date = null, $format = null, $offset_timezone = null) {
    if ($date == null) $date = date ($format);
    if ($offset_timezone == null) $offset_timezone = date_default_timezone_get ();
    if ($format == null) $format = "Y-m-d H:i:s";
    // I'd like to find a way that can avoid me to write $format and get it directly from the date i pass, but I don't know a particular method can do it
    // if ($format == null) $format = date_format ($date);

    $date_time = new DateTime ($date, new DateTimeZone ($offset_timezone));
    $date_time->setTimeZone (new DateTimeZone ($timezone));
    return $date_time->format ($format);
}

print get_timezone_offset ("Europe/Rome");
print get_timezone_offset ("Europe/Rome", date ("Y-m-d H:i:s"));
print get_timezone_offset ("Europe/Rome", date ("Y-m-d H:i:s"), "Y-m-d H:i:s");
print get_timezone_offset ("Europe/Rome", "2009-10-16 21:30:45", "Y-m-d H:i:s", "America/New_York");
?>

我希望出於性能原因避免使用正則表達式,但我不知道這是否可行

您可以使用strtotime將字符串日期轉換為時間戳,並可以隨心所欲地使用時間戳。 ;)

<?php
$date = "2009-10-16 21:30:45";
$ts   = strtotime($date);
echo date('Y-m-d', $ts);
?>

PHP date() 函數將時間戳格式化為更具可讀性的日期和時間。 為您的項目嘗試此代碼,

 <?php
    $date=date_create('2014-10-20');
    date_time_set($date,12,20,55);
    echo date_format($date,'Y-m-d H:i:s');
    ?>

據我所知,沒有保證的反向工作方式。 最好的方法可能是嘗試將正則表達式與預期的眾所周知的格式(例如\\d{2,4}[-/]\\d{2}[-/]\\d{2}表示“Ymd”)匹配,但是我想不出不使用正則表達式的簡單方法來進行匹配。 您還必須檢查解析的格式是否有意義,並且您不能對 2009 年 3 月 2 日之類的模糊日期做太多處理,該日期可以表示為09/03/022009-03-0202/03/0903/02/09 ,甚至09/02/03

我知道為時已晚,但最好這樣做:

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

在while循環和雙引號中

while($row = mysqli_fetch_assoc($result)) { 
    echo  " Date is:" ".date('d-M-Y H:i',(strtotime($row["Date_column_name"])))." ;
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM