2016-05-30 31 views
0

爲什麼爲什麼<?php回聲日期(「m/d/Y」strtotime('second wednesday June 2016'))?> output 6/15/2016而不是2016/6/8/2016?

<?php echo date("m/d/Y" strtotime('second Wednesday June-2016')) ?> 

輸出2016年6月15日,而不是2016年6月8日?

這大約是我想出來的---不是很雄辯的工作:

<?php 
    months = array(1=>'Jan',2=>'Feb',3=>'Mar',4=>'Apr',5=>'May',6=>'Jun',7=>'Jul',8=>'Aug',9=>'Sep',10=>'Oct',11=>'Nov',12=>'Dec'); 
    $year = "2016"; 
    $month = "06"; 
    $smonth=$months[(int)$month]; 
    $tstr=$month."/01/".$year; 
    $dow=date("D",strtotime($tstr)); 
    if ($dow == "Wed") { 
     $nstr="first"; 
    } else { 
     $nstr="Second"; 
    } 
    $edate= date("m/d/Y", strtotime($nstr.' Wednesday '.$smonth.'-'.$year)); 
    echo $edate."<br>"; 
    ?> 
+0

而不是'second'嘗試使用'2' –

回答

0

看相對日期格式的文檔: https://secure.php.net/manual/en/datetime.formats.relative.php

看起來他們都使用月份與日期之間的詞「of」。我在我的本地服務器上嘗試了echo date("m/d/Y", strtotime('second Wednesday of June-2016'));,它工作正常。它看起來像忽略了「的」導致未定義的行爲。

0

您寫道:

<?php echo date("m/d/Y" strtotime('second Wednesday June-2016')) ?> 

兩個問題它都應該有"m/d/Y"之後是逗號,但我認爲這個錯字只是#2。另一個問題是它應該說strtotime('second Wednesday of June 2016')

退出of這個詞會導致未知的結果。

相關問題