我有這樣的一段代碼,讓我從數據庫中的字段:檢索日期,月份,年份從日期在PHP
$end_date=$row1['end_date'];
如果我打印出來它給了我喜歡的東西:25-09- 2012 我需要的是獲取月份值,年份和日期。 類似:
$month=09;
$day=25;
$year=2012;
我怎樣才能做到這一點? 謝謝!
我有這樣的一段代碼,讓我從數據庫中的字段:檢索日期,月份,年份從日期在PHP
$end_date=$row1['end_date'];
如果我打印出來它給了我喜歡的東西:25-09- 2012 我需要的是獲取月份值,年份和日期。 類似:
$month=09;
$day=25;
$year=2012;
我怎樣才能做到這一點? 謝謝!
在你的情況,你可以使用explode功能是這樣的:
// store a string containing "25-09-2012"
$end_date = $row1['end_date'];
// split "25-09-2012" into an array of three elements
$thedate = explode("-", $end_date);
// retrieve the values
$month = $thedate[0]; // 25
$day = $thedate[1]; // 09
$year = $thedate[2]; // 2012
$values = getdate(strtotime($row1['end_date']));
echo $values['mon']; //month
echo $values['mday']; //day
echo $values['year']; //year
使用DateTime:
$date = new DateTime($row1['end_date']);
$year = $date -> format('Y');
$month = $date -> format('m');
$day = $date -> format('d');
如果時間戳都像一個規定,保持簡單:
list($day, $month, $year) = explode('-', $row1['end_date']);
答:您可以使用DateTime
$date = DateTime::createFromFormat('d-m-Y',$row1['end_date']);
$month = $date->format("m");
$day = $date->format("d");
$year = $date->format("Y");
B.使用strtotime
$date = strtotime($row1['end_date']);
$month = date("m", $date);
$day = date("d", $date);
$year = date("Y", $date);
C.您可以通過串只是sscanf
掃描
$date = sscanf($row1['end_date'], "%d-%d-%d");
$month = $date[0] ;
$day = $date[1] ;
$year = $date[2] ;
D.另一種方法是使用list
& explode
list($day, $month, $year) = explode('-', $row1['end_date']);
只需一行,然後根據需要進行格式化即可。 (十二月,十二月,十二月)等以及日期()。
list($month, $day, $year) = explode('-', date('m-d-Y', strtotime($row1['end_date'])));
看看strtodate和日期函數 – sachleen
看看我的答案。 –