[RESOLU] année académique précédente en php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] année académique précédente en php

Re: année académique précédente en php

par keunene » 09 sept. 2021, 23:06

Merci infiniment! vous avez donné la solution au point d'aller au delà même de la solution.Encore merci et merci!

Re: année académique précédente en php

par ynx » 07 sept. 2021, 22:57

Pour compléter un peu ma première réponse.

Puisque l'année académique est à cheval sur deux années du calendrier, il faut avant tout définir à partir de quand démarre l'année académique puis comparer cette date avec la date à afficher pour obtenir la bonne période.

Un petit exemple possible pour afficher la bonne période en considérant que l'année académique commence le 1er septembre de chaque année (on peut donc simplement vérifier si le mois de la date à afficher est supérieur ou égal à 9 pour obtenir la bonne période à partir de l'année de cette date) :
function getAcademicYears($datetime = 'now') {
    $time = strtotime($datetime);
    $year = date('Y', $time);
    
    if (date('n', $time) >= 9) {
        return $year . '-' . $year + 1;
    }
    
    return $year - 1 . '-' . $year;
}

echo 'Date actuelle : ' . date('d/m/Y'); // Date actuelle : 07/09/2021
echo 'Période actuelle : ' . getAcademicYears(); // 2021-2022
echo 'Période précédente : ' . getAcademicYears('now -1 year'); // 2020-2021
echo 'Période suivante : ' . getAcademicYears('now +1 year'); // 2022-2023

echo 'Période pour le 1er janvier 2021 : ' . getAcademicYears('1 Jan 2021'); // 2020-2021
echo 'Période pour le 1er décembre 2021 : ' . getAcademicYears('1 Dec 2021'); // 2021-2022
echo 'Période pour le 14 avril 2022 : ' . getAcademicYears('14 Apr 2022'); // 2021-2022
echo 'Période pour le 7 septembre 2022 : ' . getAcademicYears('7 Sep 2022'); // 2022-2023

Re: année académique précédente en php

par ynx » 07 sept. 2021, 17:47

Bonjour,

Avec l'exemple proposé, j'obtiens bien le résultat "2020-2021" (puisque date("Y") doit retourner l'année en cours, soit 2021, sauf si le serveur PHP est déjà en 2022 je suppose ?).

En reprenant le même principe, on peut simplement indiquer "-2 years" dans strtotime() :
$datev = date("Y", strtotime("-1 year")) . '-' . date("Y");
echo $datev; // 2020-2021

$datePrev = date("Y", strtotime("-2 years")) . '-' . date("Y", strtotime("-1 year"));
echo $datePrev; // 2019-2020
(Au passage, pas besoin de concaténer des chaines vides au début et à la fin de l'affectation.)

année académique précédente en php

par keunene » 07 sept. 2021, 10:38

bonjour,
je souhaiterais afficher l'année académique précédente! par exemple l'année académique actuelle s'écrit chez nous ici comme ceci: 2021-2022.
je voudrais par un code écrire l'année acadamique précédente par code php c'est à dire 2020-2021.Pour l'année en cours j'ai pu le faire par ce code.


Code : Tout sélectionner

$datev=''.date("Y",strtotime("-1 year")).'-'.date("Y").''; echo $datev;
Merci pour votre assistance!