Php Récuperer numéro de semaine
Résolu
wafa_o
Messages postés
109
Date d'inscription
Statut
Membre
Dernière intervention
-
wafa_o Messages postés 109 Date d'inscription Statut Membre Dernière intervention -
wafa_o Messages postés 109 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaiterais récupérer le numéro de la semaine précédente ainsi que l'année de cette semaine.
Jusqu'à aujourd'hui j'utilisais le code suivant :
Malheureusement, depuis 2011 rien ne fonctionne :(
Est ce que quelqu'un peut m'aider svp ?
Je souhaiterais récupérer le numéro de la semaine précédente ainsi que l'année de cette semaine.
Jusqu'à aujourd'hui j'utilisais le code suivant :
$semaine_en_cours = date("W"); $semaine_recherche = $semaine_en_cours - 1; $annee_recherche = date("Y");
Malheureusement, depuis 2011 rien ne fonctionne :(
Est ce que quelqu'un peut m'aider svp ?
A voir également:
- Afficher numéro de semaine barre des tâches windows 10
- Windows 11 barre des taches a gauche - Guide
- Clé d'activation windows 10 - Guide
- Barre des taches windows 10 - Guide
- Restauration systeme windows 10 - Guide
- Windows 10 ne démarre plus - Guide
4 réponses
Bonjour,
date("W") te renvoi le numéro de la semaine dans l'année,
donc actuellement date("W") == 1
et donc d'après ton code $semaine_recherche == 0
Ton erreur doit venir de là.
Essaye de jouer sur les conditions :
if(date("W")-1 == 0)
{
$semaine_recherche = 52; //(ici un test sur le nombre de semaine de l'année précédente pourrait être nécessaire)
$annee_recherche = date("Y")-1;
}
J'espère avoir compris ton problème ^^
date("W") te renvoi le numéro de la semaine dans l'année,
donc actuellement date("W") == 1
et donc d'après ton code $semaine_recherche == 0
Ton erreur doit venir de là.
Essaye de jouer sur les conditions :
if(date("W")-1 == 0)
{
$semaine_recherche = 52; //(ici un test sur le nombre de semaine de l'année précédente pourrait être nécessaire)
$annee_recherche = date("Y")-1;
}
J'espère avoir compris ton problème ^^
Merci Tartefion, c'est exactement mon problème !
Avec les conditions ca fonctionne.
N'y a t'il pas un moyen de calculer, à partir du numéro de semaine et de l'année, le lundi de cette même semaine ?
Ainsi je pourrais calculer le timestamp et trouver la semaine précédente....
Avec les conditions ca fonctionne.
N'y a t'il pas un moyen de calculer, à partir du numéro de semaine et de l'année, le lundi de cette même semaine ?
Ainsi je pourrais calculer le timestamp et trouver la semaine précédente....
Tu cherche le numéro du jour dans l'année d'un lundi de cette même année ?
Si oui tu peux le trouver comme ça pour la semaine en cours :
$jour_numerique = date("z"); //Renvoi le numéro dans l'année (1 à 366)
$jour_textuel = date("D"); //Renvoi le jour de la semaine en mode "3 lettres" : Mon, Tue, Wed...
$num_lundi_recherche = 0;
switch($jour_textuel) {
case "Mon" :
$num_lundi_recherche = jour_numerique;
break;
case "Tue" :
$num_lundi_recherche = jour_numerique-1;
break;
case "Wed" :
$num_lundi_recherche = jour_numerique-2;
break;
case "Thu" :
$num_lundi_recherche = jour_numerique-3;
break;
case "Fri" :
$num_lundi_recherche = jour_numerique-4;
break;
case "Sat" :
$num_lundi_recherche = jour_numerique-5;
break;
case "Sun" :
$num_lundi_recherche = jour_numerique-6;
break;
}
Après pour obtenir le numéro d'un lundi d'une semaine précise dans l'année je ne sais pas. Peut être avec la fonction mktime() qui te permet de créer des dates antérieurs et de les manipulé (de façon limité quand même).
Si oui tu peux le trouver comme ça pour la semaine en cours :
$jour_numerique = date("z"); //Renvoi le numéro dans l'année (1 à 366)
$jour_textuel = date("D"); //Renvoi le jour de la semaine en mode "3 lettres" : Mon, Tue, Wed...
$num_lundi_recherche = 0;
switch($jour_textuel) {
case "Mon" :
$num_lundi_recherche = jour_numerique;
break;
case "Tue" :
$num_lundi_recherche = jour_numerique-1;
break;
case "Wed" :
$num_lundi_recherche = jour_numerique-2;
break;
case "Thu" :
$num_lundi_recherche = jour_numerique-3;
break;
case "Fri" :
$num_lundi_recherche = jour_numerique-4;
break;
case "Sat" :
$num_lundi_recherche = jour_numerique-5;
break;
case "Sun" :
$num_lundi_recherche = jour_numerique-6;
break;
}
Après pour obtenir le numéro d'un lundi d'une semaine précise dans l'année je ne sais pas. Peut être avec la fonction mktime() qui te permet de créer des dates antérieurs et de les manipulé (de façon limité quand même).