2010-04-19 109 views

回答

69

您可以使用正則表達式或一些手工串擺弄,但我想我更喜歡:

date("d/m/Y", strtotime($str)); 
+0

我找到了很多我們的服務器(澳大利亞時間運行)我需要使用:日期(「d/m/o「,strtotime($ str)); - >即「一年」。 – niggles 2010-04-20 01:57:04

+0

你好! 我已經嘗試過您的解決方案,但似乎沒有工作。就像我在帖子中提到的那樣,我只需要dd/mm/yyyy格式的日期而沒有時間分量。 感謝您的幫助, 此致敬意! – 2010-04-20 09:09:15

+0

哪部分不起作用? 'strtotime(「2010-04-19 18:31:27」);'返回從時代開始的秒數,'1271716287'(對於我的TZ)。 'date()'接受一個格式字符串和一個紀元int;格式字符串告訴它要返回的內容,「d/m/Y」表示天數爲零填充的int,月份表示爲零填充的int,年份表示爲四位數。由於格式字符串中沒有包含時間參數(例如「d/m/Y h:i:s」),因此它們不會被退回 – 2010-04-20 14:03:16

2

如果您日期是一個字符串的格式使用爆炸功能

array explode (string $delimiter , string $string [, int $limit ]) 
//In the case of your code 

$length = strrpos($oldDate," "); 
$newDate = explode("-" , substr($oldDate,$length)); 
$output = $newDate[2]."/".$newDate[1]."/".$newDate[0]; 

希望以上的作品現在

+3

這比解決方案要複雜得多。 – 2010-04-19 22:40:09

+0

您可能是對的 – 2010-04-19 23:16:26

+0

但對其他可能的情況有用。 – 2011-08-03 13:02:35

4
<?php 
$test1='2010-04-19 18:31:27'; 
echo date('d/m/Y',strtotime($test1)); 
?> 

試試這個

+0

對不起,但你的鏈接(?)似乎不工作! – 2010-04-20 09:07:25

-1

試試這個:

$old_date = Date_create("2010-04-19 18:31:27"); 
$new_date = Date_format($old_date, "d/m/Y"); 
-3
$source = 'your varible name'; 
$date =  new DateTime($source); 
$_REQUEST["date"] =  $date->format('d-m-Y'); 

echo $_REQUEST["date"]; 
+1

請不要在您的帖子下留下簽名。 – Glorfindel 2017-07-04 08:27:03

+1

這個問題說轉換爲「dd/mm/yyyy」。這個解決方案似乎給出了錯誤的格式。 – Pang 2017-07-05 01:32:22