Date_time numéro de jour dans la semaine
Résolu
Guillaume
-
jeremy.s Messages postés 1226 Date d'inscription Statut Membre Dernière intervention -
jeremy.s Messages postés 1226 Date d'inscription Statut Membre Dernière intervention -
Bonjour, tout le monde
Voila je cherche a pouvoir obtenir le numéro du jour de la semaine exemple:
lundi <--1
madi <--2
mercredi <--3
etc..
J'ai donc cherché sur le net et même sur: http://php.net/manual/fr/function.date.php pour trouver la solution. Sur la page de PHP.net est indiqué que c'est N qu'il faut passer en paramètre de $format pour obtenir le numéro du jour de la semaine, ce que j'ai donc testé et que nenni. Je fais donc : string date(string $format [N]); mais cela me retourne une erreur.
Avez-vous des idées de solutions ou d'alternative?
Merci d'avance.
Voila je cherche a pouvoir obtenir le numéro du jour de la semaine exemple:
lundi <--1
madi <--2
mercredi <--3
etc..
J'ai donc cherché sur le net et même sur: http://php.net/manual/fr/function.date.php pour trouver la solution. Sur la page de PHP.net est indiqué que c'est N qu'il faut passer en paramètre de $format pour obtenir le numéro du jour de la semaine, ce que j'ai donc testé et que nenni. Je fais donc : string date(string $format [N]); mais cela me retourne une erreur.
Avez-vous des idées de solutions ou d'alternative?
Merci d'avance.
A voir également:
- Php jour de la semaine
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mettre a jour chromecast - Accueil - Guide TV et vidéo
- Comment mettre à jour ses pilotes - Guide
- Le jour de ma naissance gratuit - Télécharger - Histoire & Religion
7 réponses
Salut, tu as essayé de cette façon $NumDayWeek = date(N); ?
Sinon si ça marche pas, je ferais une petite fonction, après tout tu as que 7 jours dans la semaine, en supposant que tu utilise la fonction date(D), les trois premières lettres des jours te seront renvoyé en anglais,
function DayToNum($Day){
if ($Day=='') return 0; //$Day est vide.
if ($Day=="Mon") return 1;
elseif...
elseif($Day=="Sun" return 7;
else return 0; //Si le jour ne correspond pas.
}
En espérant t'avoir aider.
Sinon si ça marche pas, je ferais une petite fonction, après tout tu as que 7 jours dans la semaine, en supposant que tu utilise la fonction date(D), les trois premières lettres des jours te seront renvoyé en anglais,
function DayToNum($Day){
if ($Day=='') return 0; //$Day est vide.
if ($Day=="Mon") return 1;
elseif...
elseif($Day=="Sun" return 7;
else return 0; //Si le jour ne correspond pas.
}
En espérant t'avoir aider.
Bonjour Jeremy,
J'ai essayé ce que tu as marqué et ça fonctionne aussi.
Je ne savais pas qu'il fallait instancier un nouvel objet datetime (logique en plus ^^) et d'ailleurs le fait de faire : $d1->format('l : N'); n'est pas marqué sur PHP.net.
Donc merci c'est plus clair :)
J'ai essayé ce que tu as marqué et ça fonctionne aussi.
Je ne savais pas qu'il fallait instancier un nouvel objet datetime (logique en plus ^^) et d'ailleurs le fait de faire : $d1->format('l : N'); n'est pas marqué sur PHP.net.
Donc merci c'est plus clair :)
Ce que je t'ai montré c'est pareil que date('N')
echo date('N');
revient à
echo new DateTime()->format('N');
A la place du N, toujours entre cote, tu peux mettre tout ce qui est sur cette page :
https://www.php.net/manual/en/function.date.php
Donc c'est marqué sur PHP.net mais implicitement ;-)
echo date('N');
revient à
echo new DateTime()->format('N');
A la place du N, toujours entre cote, tu peux mettre tout ce qui est sur cette page :
https://www.php.net/manual/en/function.date.php
Donc c'est marqué sur PHP.net mais implicitement ;-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
En effet je viens de mettre echo date('N'); et c'est bon ^^, je me demande comment j'ai fais pour ne pas y penser !
Thanks pour les explications :)
En effet je viens de mettre echo date('N'); et c'est bon ^^, je me demande comment j'ai fais pour ne pas y penser !
Thanks pour les explications :)
Salut !
Pour faire ce que tu veux, c'est bien l'objet DateTime :
https://www.php.net/manual/fr/datetime.construct.php
Tu peux voir ici les formats :
https://www.php.net/manual/en/function.date.php
Ce qui va t'intéressé toi c'est donc l et N
Donc exemple :
$d1 = new DateTime('2013-06-12');
echo $d1->format('l : N');
// Wednesday : 3
Pour faire ce que tu veux, c'est bien l'objet DateTime :
https://www.php.net/manual/fr/datetime.construct.php
Tu peux voir ici les formats :
https://www.php.net/manual/en/function.date.php
Ce qui va t'intéressé toi c'est donc l et N
Donc exemple :
$d1 = new DateTime('2013-06-12');
echo $d1->format('l : N');
// Wednesday : 3
Salut, merci d'avoir répondu :),
J'ai essayé ce que tu as marqué ça marche (J'affiche le résultat de $NumDayWeek le numéro du jour s'affiche).
Seulement il y a marqué : Notice: Use of undefined constant N - assumed 'N' in .. pour la ligne qui correspondait a : $NumDayWeek = date(N);
J'ai donc mis un ' @ ' avant la ligne que tu m'as conseillé, et plus de message d'erreur.
Apparemment mettre un arobase peut résoudre des erreurs de fonction PHP.
Merci pour l'aide et la bonne fonction c'est cool :)!
J'ai essayé ce que tu as marqué ça marche (J'affiche le résultat de $NumDayWeek le numéro du jour s'affiche).
Seulement il y a marqué : Notice: Use of undefined constant N - assumed 'N' in .. pour la ligne qui correspondait a : $NumDayWeek = date(N);
J'ai donc mis un ' @ ' avant la ligne que tu m'as conseillé, et plus de message d'erreur.
Apparemment mettre un arobase peut résoudre des erreurs de fonction PHP.
Merci pour l'aide et la bonne fonction c'est cool :)!
-> $NumDayWeek = date('N');
-> date('D')
Ya même plus simple qu'une fonction ;-)
$tabJours = array(1=>'Lundi', 2=>'Mardi', etc...., 7=>'Dimanche');
echo $tabJour[date('N')];
:)