Easy-Micro


LANGAGE Langage PHP
Dates PHP

Manipuler les dates en PHP

Syntaxe : date(format). La fonction Date, qui permet d'obtenir la date et l'heure locale du serveur, retourne une date ou une heure sous forme d'une chaîne, au format donné par le paramètre format. On peut afficher un caractère spécial dans la chaîne de format en le protégeant par un anti-slash.

Exemple de manipulation de date

<?php
$aujourdhui = date("l d F Y");
?>
<html><body>
<?php echo "Nous sommes le ".$aujourdhui;?>
</body></html>

Résultat :
Note sur ce résultat: Pour la date on utilise ici l'option "l" (L minuscule) pour avoir le jour de la semaine en texte anglais version longue, l'option "d" qui retourne le jour du mois, sur deux chiffres, l'option "F" pour avoir le mois en texte anglais version longue et "Y" pour l'année sur 4 chiffres.

Autre exemple de manipulation de date

<?php
$aujourdhui = date("d/m/Y"); $heure = date("H\hi");
?>
<html><body>
<?php echo "Nous sommes le ".$aujourdhui.", il est ".$heure; ?>
</body></html>

Résultat :
Note sur ce résultat: Pour la date on utilise ici l'option "d" qui retourne le jour du mois, sur deux chiffres, "m" pour le mois en chiffre et "Y" pour l'année sur 4 chiffres. Pour l'heure on utilise l'option H qui retourne l'heure au format 24h et l'option i qui retourne les minutes. Le \h permet de saisir du texte (ici un h) sans qu'il ne soit pris en compte.

Pour formater des dates en français, on utilise les fonctions setlocale(), qui modifie les informations de localisation et strftime(), qui formate une date/heure locale avec la configuration locale.

Exemple avec setlocale() et strftime()

<?php
setlocale(LC_TIME, 'fr_FR.utf8','fra');
$date_fr = strftime("%A %d %B %Y");
?>
<html><body>
<?php echo "Nous sommes le ".$date_fr; ?>
</body></html>

Résultat :
Note sur ce résultat: LC_TIME est utilisé pour le format de date et d'heure avec la fonction strftime(). Cette dernière utilise l'option %A qui retourne le nom du jour de la semaine, %d qui retourne le jour du mois en numérique (01 à 31), %B pour le nom du mois et %Y pour l'année sur quatre chiffres.

Fonctions utiles
• checkdate() : Vérifie la validité d'une date (sur chacun des 3 chiffres).
Exemple: <?php if (checkdate(01, 32, 2000)) { echo "Bon";} else { echo "Pas bon";} ?>

• getlastmod() : Retourne la date de dernière modification de la page.
Exemple: <?php echo "Dernière modification : " . date( "d/m/Y", getlastmod()); ?>

• time() : donne le timestamp Unix actuel (nombre de seconde écoulées depuis le 1/01/1970). Exemple :
<?php
$nextWeek = time() + (7 * 24 * 60 * 60);
echo "Aujourd\'hui : ". date('d/m/Y');
echo "Semaine prochaine : ". date('d/m/Y', $nextWeek);
?>


• strtotime() : lie une date au format anglophone (YYYY-DD-MM hh:mm:ss) et la transforme en timestamp Unix. Idéale pour récupérer en PHP une date qui provient d'une base de donnée MySQL. Exemple :
<?php
$resultat = mysql_query("SELECT * FROM matable");
$ligne = mysql_fetch_array($resultat);
$dateMySQL = $ligne['mon_champ_date'];
$mon_nouveau_champ_date = date("d/m/Y", strtotime($dateMySQL));
echo $mon_nouveau_champ_date;
?>

On peut aussi transformer une date directement lors d'une requête SQL :
SELECT *, DATE_FORMAT(mon_champ_date, '%d/%m/%Y') FROM ma_table;
Voir les exemples de manipulation de base de données MySQL en PHP dans l'espace Membre Easy-Micro...


Suivez les aventures des skippers aquitains sur EasyVoile.com
Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]
Lundi 17 juin 2019 - Semaine 25 - Saint Hervé (Demain: Saint Léonce)
Aujourd'hui, c'est l'anniversaire de Lio (1962-57 ans), chanteuse et actrice belgo-portugaise francophone.
Haut de page Easy-Micro