2014-02-09 51 views
1

我想要在數組php中重複使用元素,並考慮每次選擇不同的元素形式數組以開始重複。 我有這樣的代碼:在php中重複數組

$numbermonth=$_GET['month']; 
    $year=$_GET['year']; 
    $day_list = array('Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'); 
    $days_in_month = date("t", mktime(0, 0, 0, $numbermonth, 1, $year)); 
    $first_day_in_month = date('D', mktime(0,0,0, $numbermonth, 1, $year)); 
     for($i=0; $i<=$days_in_month; $i++){ 
     //i want echo here days names, first day name must be $first_day_in_month 
     // and repeat days yet array is not ended 
     echo $day_list[$i]; 

     } 
+1

爲什麼不直接根據循環中的日期獲取日期名稱? – KeepMove

+0

我想得到所有天的名字爲一個月!並回應它們。這就像每月的日曆。必須在所有月份的第一天獲取所有天數名稱 –

回答

2

它看起來就像你試圖在給定的月份裏每天循環一次並輸出一週中的某一天。

$year = 2019; 
$numbermonth = 2; 

$start = new DateTime('midnight'); 
$start->setDate($year, $numbermonth, 1);  
$period = new DatePeriod($start, new DateInterval('P1D'), $start->format('t') - 1); 

foreach ($period as $date) { 
    echo $date->format('D') . PHP_EOL; 
} 
+0

在這個代碼在所有月份的第一天在同一天(太陽)。我想代碼生成名稱天每月與第一天:月份編號1 2014年第一天(週三)我想要第一天(週三)爲1月份的排列天數。並在月的第一天(太陽)陣列... –

+0

我的例子中有一個打字錯誤,它[現在工作正常](https://eval.in/private/4f0a8a86a96474)。 – salathe

+0

非常感謝你!它可以很好地工作。 –

1

我想你應該直接循環的天,並獲得名字,但如果你嚴格想你的想法去後,你可以不喜歡

$day_list = array('Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'); 
$end = end($day_list); 
reset($day_list); 
$days_in_month = date("t", mktime(0, 0, 0, 1, 1, 2014)); 
for($i = 0; $i <= $days_in_month; $i++) 
{ 
    echo current($day_list).'<br>'; 

    if (current($day_list) == $end) 
     reset($day_list); 
    else 
     next($day_list); 

} 
+0

同一天(週一)。 –

+0

當然...如果這不是想要的,那麼你需要循環的日子,如下面的答案salathe – Psychokiller1888