IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Téléchargé 2 fois
Vote des utilisateurs
0 
0 
Détails
Licence : Gratuit pour usage non commercial
Mise en ligne le 12 juillet 2013
Plate-formes : Linux, Mac, Windows
Langue : Français
Référencé dans
Navigation

Script qui permet d'afficher la saison actuelle

Ecrire un script bilan1.php qui permet d'afficher la saison actuelle soit "C'est le printemps !" ou "C'est
l'hiver !" ou "C'est l'automne !" ou "C'est l'été !". Tester.
Avatar de rawsrc
Expert éminent sénior https://www.developpez.com
Le 13/07/2013 à 10:39
Salut,

Tu peux quand même faire beaucoup mieux, non ?
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$saisons = array(
    '-12-21' => 'hiver',
    '-09-21' => 'automne',
    '-06-21' => 'été',
    '-03-21' => 'printemps',
    '-12-31' => 'hiver'
);

$date = new \DateTime('2013-03-20'); // ici tu mets la date que tu veux
$y    = $date->format('Y');

foreach ($saisons as $md => $saison)
{
    if ($date >= new \DateTime("$y$md"))
    {
        break;
    }
}

echo $saison;
Avatar de sabotage
Modérateur https://www.developpez.com
Le 13/07/2013 à 10:48
On peut regrouper mois et jour pour faire moins de conditions :
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function saison() {

    $date = date('md');
 
    if ($date >= '1222') {
         $saison = 'Hiver';
    }
    elseif ($date >= '0923') {
         $saison = 'Automne';
    }
    elseif ($date >= '0621') {
         $saison = 'Été';
    }
   else {
         $saison = 'Printemps';
   }

  return $saison;

}
Avatar de nicosmash
Membre chevronné https://www.developpez.com
Le 14/07/2013 à 8:38
Bonjour rawsrc et sabotage

Merci à vous je pense que je vais utiliser la partie de code sabotage je la trouve beaucoup plus simple et algorithmiquement plus simple que la mienne et la tienne (rawsrc)

Merci à vous deux et au plaisir
Avatar de yeshelolo
Candidat au Club https://www.developpez.com
Le 09/04/2015 à 10:06
Merci rawsc pour ce beau code.
Juste une question pourquoi avoir rajouté en fin de tableau '-12-31' => 'hiver' ?
Cela me parait un bout de code inatteignable puisque '-12-31' est forcement supérieur à '-12-21' testé en première instance.
Mais il y a peut-être une subtilité qui m'échappe...

Et encore merci pour ce code, je récupère ;-)
Avatar de rawsrc
Expert éminent sénior https://www.developpez.com
Le 10/04/2015 à 14:07
Bonjour,

Merci pour le compliment.
Pour bien comprendre l'effet de bord et la raison du '-12-31', je t'invite à retirer cette valeur de $saisons et d'essayer avec une date du style : 2013-01-01...
Avatar de yeshelolo
Candidat au Club https://www.developpez.com
Le 10/04/2015 à 15:17
Ah ben oui, vu
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.