Extraire les jours de la semaine à partir d'un numéro de semaine donné
Calcul des jours individuels qui tombent dans une semaine spécifique, en fonction de son numéro de semaine correspondant , est une tâche courante dans les applications basées sur le temps. Ce guide fournit une solution à ce problème en PHP en utilisant les fonctions date, strtotime et mktime.
Implémentation PHP
<code class="php"><?php $week_number = 40; $year = 2008; for ($day = 1; $day <= 7; $day++) { echo date('m/d/Y', strtotime($year . 'W' . $week_number . $day)) . "\n"; } ?></code>
Cet extrait de code initialise d'abord le numéro de la semaine et l'année correspondante. Ensuite, il parcourt les jours de la semaine, en commençant par le lundi (jour 1) et en se terminant par le dimanche (jour 7). Pour chaque jour, il calcule la date correspondante à l'aide de la fonction strtotime et l'imprime au format m/d/Y.
Fonction PHP supplémentaire
Alternativement, un autre PHP La fonction week_from_monday peut être utilisée pour obtenir les dates d'une semaine donnée, à partir du lundi. Cette fonction prend une chaîne de date au format JJ-MM-AAAA comme argument et renvoie un tableau de dates pour la semaine correspondante.
<code class="php"><?php function week_from_monday($date) { list($day, $month, $year) = explode('-', $date); $wkday = date('l', mktime(0, 0, 0, $month, $day, $year)); switch ($wkday) { case 'Monday': $numDaysToMon = 0; break; case 'Tuesday': $numDaysToMon = 1; break; case 'Wednesday': $numDaysToMon = 2; break; case 'Thursday': $numDaysToMon = 3; break; case 'Friday': $numDaysToMon = 4; break; case 'Saturday': $numDaysToMon = 5; break; case 'Sunday': $numDaysToMon = 6; break; } $monday = mktime(0, 0, 0, $month, $day - $numDaysToMon, $year); $seconds_in_a_day = 86400; for ($i = 0; $i < 7; $i++) { $dates[$i] = date('Y-m-d', $monday + ($seconds_in_a_day * $i)); } return $dates; } $date = '07-10-2008'; $dates = week_from_monday($date); print_r($dates); ?></code>
Cette fonction améliorée permet plus de flexibilité dans la récupération des dates d'un semaine, étant donné une date précise dans cette semaine.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!