Apprendre
comment créer un site Web pour les débutants


Gamme cours gratuit en HTML XHTML CSS et PHP


Annuaire Webmaster

Les dates en php.

La fonction date est une fonction à laquelle on a presque toujours affaire. Si elle est bien utilisée elle peut afficher tout élément de date pour tout calendrier.
Elle peut renvoyer plusieurs valeurs qu’on ne peut pas toutes les énumérer ici c’est très long .
En voici les plus utiles à mon avis.
Lettre Signification Valeurs possibles Exemple
s Secondes 00 à 59 53
i Minutes 00 à 59 26
H Heure 00 à 23 00
I Indique si l'heure d'été est activée(1 = oui, 0 = non) 0 ou 1 1
O Différence d'heures avec l'heure GMT (Greenwich) -1200 à +1200 +0200
d Jour du mois 01 à 31 29
m Mois de l'année 01 à 12 08
Y Année, sur 4 chiffres Beaucoup de possibilités 2005
y Année, sur 2 chiffres Beaucoup de possibilités 05
L Indique si l'année est bissextile (1 = oui, 0 = non) 0 ou 1 0
l Jour de la semaine écrit en anglais Sunday à Saturday Monday
F Mois écrit en anglais January à December August
t Nombre de jours dans le mois 28 à 31 31
w Numéro du jour de la semaine 0 (dimanche) à 6 (samedi) 1
W Numéro de la semaine dans l'année 01 à 52 35
z Numéro du jour de l'année 0 à 366 240
Et voici comment elle fonctionne :

Code PHP pour afficher le jour :

< ?php $jour= date(‘d’) ; echo 'Aujourd\'hui, nous sommes le : ' . $jour; ?>

Mais malheureusement elle fonctionne en anglais. Le seul moyen pour qu’elle donne les jours en français est que vous créez une fonction qui les transforme en français, vous savez le faire ? si non retournez voir le chapitre sur les fonctions au début de ce cours. Un autre exemple pour

afficher la date entière jour, moi année.

Code PHP :

<?php echo 'Nous sommes le : ' . date('d/m/Y'); ?>

Comme vous l’avez peut-être constaté on n’a pas utilisé de variable dans ce code, c’est une autre manière utilisée avec la concaténation sur les fonctions. Un dernier exemple, mais regardez bien ce code. Code PHP :

<?php echo 'Il est ' . date('H \h\e\u\r\e\s'); ?>

on vient de mettre des anti slache ( \ ) devant tout caractère qu’on ne veut pas que la fonction remplace , l’affichage va donner par exemple : Il est 10 heures La fonction date est simple à utiliser.

Le timestamp.

C’est un nombre qui compte le nombre de secondes écoulé depuis le 1er janvier 1970 à minuit. On utiles la fonction time pour connaître le timestamp actuel en PHP. Code php :

<?php echo 'Le timestamp actuel est : ' . time(); ?>

Ce code affichera le timestamp actuel. Le timestamp augmente à chaque seconde qui s’écoule de 1. Si vous donnez à la fonction date un timestamp elle fera le calcule sur ce moment, exemple : Code PHP :

<?php $timestamp = 1112315520; // C'est l'heure qu'il était quand j'écrivais le tutoriel ! ?> <p>Voici un timestamp sur lequel je veux savoir la date :</p> <p> <?php $timestamp = 1112315520; // C'est l'heure qu'il était quand j'écrivais le tutoriel ! ?> <ul> <li> <?php echo date('d/m/Y', $timestamp); ?></li> <li>Ce jour-là était <?php echo date('l', $timestamp); ?> ( c'est en anglais )</li> <li>Il était exactement : <?php echo date('H\h i\m\i\n s\s', $timestamp); ?> </li> <li>Il y avait <?php echo date('t', $timestamp); ?> jours ce mois-ci.</li> </ul> </p>

Nous avons ajouté le timestamp voulu comme paramètre à la fonction date. Nous pouvons utiliser le timestamp pour de nombreuses applications. Par exemple, lorsque vous écrirez un article, il vous suffira d'enregistrer le timestamp, et vous pouvez grâce à ce nombre ressortir toutes les infos possibles dessus : le jour, l'heure qu'il était etc... Pour récupérer le timestamp correspondant à une date, on utilise la fonction mktime. Avec une date en paramètre, et elle va nous donner le timestamp correspondant. Cette fonction peut prendre pas mal de paramètres, en voici la liste : $timestamp = mktime(heure, minutes, secondes, mois, jour, an, heure d'hiver). Exemple : Code PHP :

<?php $le_timestamp = mktime(10, 25, 15, 7, 16, 1996); echo 'Le timestamp du 16/07/1996 à 10h 25min 15s était : ' . $le_timestamp; ?>

Sans l’heure on ne peut pas avoir le timestamp, alors si on ne connait pas l’heure on se base sur minuit et on donne 0 heure 0 min 0 seconde. On écrit donc : $le_timestamp = mktime(0, 0, 0, 7, 16, 1996);

Un exemple pratique :écrir les jours en français

Si vous êtes né après le 1er janvier 1970 à minuit et vous voulez savoir le jour de votre naissance. Tout d’abord on va changer le jour de l’anglais en français ; pour cela on va créer un array qui associera le numéro 0 au texte "Dimanche", le numéro 1 au texte "Lundi" etc... Revoyez le début du chapitre sur les array si vous avez oublié. Code PHP :

// On crée un array pour les jours (0 => Dimanche, 1 => Lundi...) $jours = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');

Afficher la date de naissance

Puis on va utiliser un formulaire pour récupérer la date de naissance, on fait le calcule on utilisant le timestamp et la fonction date. Code PHP :

<p>Indiquez votre date de naissance (jj/mm/aaaa) :</p> <form method="post" action="naissance.php"> <p> <input type="text" name="jour" size="2" maxlength="2" /> / <input type="text" name="mois" size="2" maxlength="2" /> / <input type="text" name="an" size="4" maxlength="4" /><br /><br /> <input type="submit" value="Envoyer" /> </p> </form> <?php if (isset($_POST['jour']) AND isset($_POST['mois']) AND isset($_POST['an'])) { // on saisie sa date de naissance, on va calculer le jour qu'il était. // On calcule le timestamp correspondant à la date saisie $timestamp_naissance = mktime(0, 0, 0, $_POST['mois'], $_POST['jour'], $_POST['an']); // On récupère le numéro du jour correspondant au timestamp (0, 1, 2, 3...) $numero_jour = date('w', $timestamp_naissance); // On utilise l’array pour numéroter les jours (0 => Dimanche, 1 => Lundi...) $jours = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'); // On récupère le nom du jour en français grâce à l'array qu'on vient de créer $jour_naissance = $jours[$numero_jour]; // Puis on affiche le résultat> echo '<p>Vous êtes né un ' . $jour_naissance . '</p>'; } else // Sinon, c'est que le visiteur n'a pas encore saisie sa date de naissance, on affiche le formulaire { ?> <?php } ?>

Retourner au haut de la page..haut de page…
Précèdent…...Précèdent...  			Vous êtes ici:les dates en php			Voir la suite…suivant…
						


Vous pouvez copier, modifier des copies de cette page, tant que cette note apparaît clairement
Vous devez citer le nom de l'auteur original et faire un lien hypertexte vers http://apprendre.uuuq.com