2014-08-31 60 views
0
$myDate = "30-Aug-2014"; 
$which_day = date('N',$myDate); 
echo "Which Day > " . $which_day; 

回報率爲PHP獲得N日此日期格式

Which Day > 4 

但結果應該是6,因爲它是星期六:)我如何改變讓我的代碼返回一個6這是實際回答。在數據庫中我的日期格式而不是Unix時間,在

d-M-Y 

回答

1

你必須把它轉換成timestamp首先使用strtotime(),然後將其送入date()功能VARCHAR格式。 〔實施例:

$myDate = "30-Aug-2014"; 
$which_day = date('N', strtotime($myDate)); 
         //^
echo "Which Day > " . $which_day; // Which Day > 6 

或者你也可以使用DateTime

$myDate = "30-Aug-2014"; 
$which_day = DateTime::createFromFormat('d-M-Y', $myDate); 
echo "Which Day > " . $which_day->format('N'); 
1

使用的strtotime()和日期():

$myDate = "30-Aug-2014"; 
$which_day = date('N',strtotime($myDate)); 
echo "Which Day > " . $which_day;