Le Format Date en PHP

Affichage de la date complète en php

Nous voulons la date complète
Mercredi 20 Septembre 2017

Uniquement le jour de la semaine
Mercredi
Le jour entier avec les heures et les minutes
Nous sommes le 20/09/2017 à 08 h 53 mn.
        <?php
        $aujourdhui = date("j/m/Y \à\ H \h i \m\\n.");
        ?>
        //affichage
        <?php echo "Nous sommes le $aujourdhui"; ?>
        
Convertir une date

Supposons que la date ait ce format 2008-11-25, nous souhaitons l'afficher au format français.
Ainsi, grâce à une expression régulière nous pouvons la convertir.

25-11-2008
        <?php 
        $date = "2008-11-25";
        $date_conv=preg_replace('<^([0-9].*)-([0-9].*)-([0-9].*)$>' ,"\\3-\\2-\\1",$date);
        echo $date_conv;
        ?>
        
Code de la fonction date compléte
        function dateComplete($jour = 0, $mois = 0, $annee = 0){
            $nomMois = array(1 => 'Janvier', 'Février', 'Mars', 'Avril', 
                                  'Mai', 'Juin', 'Juillet', 'Août', 'Septembre',
                                   'Octobre', 'Novembre', 'Décembre');
            if($jour == 0) $jour = date('j');
            if($mois == 0) $mois = date('n');
            if($annee == 0) $annee = date('Y');
            if($jour == 1)	$j2 = 'er';
            return jourSemaine($jour,$mois,$annee).' '.$jour.$j2.' '.$nomMois[$mois].' '.$annee;
        }
        
Appel de la fonction
        <? echo dateComplete();  ?>
        
D'autres fonctions avec les dates
Nous voulons la date du 14 Juillet 1789
Mardi 14 Juillet 1789

Dans l'appel à la fonction passer en argument le jour, le mois, et l'année.

        <?php echo dateComplete(14,7,1789);  ?>
        

Nous voulons le jour de cette date
Mardi
        <?php echo jourSemaine(14,7,1789);  ?>
        
Code de la fonction du jourSemaine
        function jourSemaine($jour = 0, $mois = 0, $annee = 0){
            if($jour == 0) $jour = date('j');
            if($mois == 0) $mois = date('n');
            if($annee == 0) $annee = date('Y');
        
            $jours_sem = Array('Samedi','Dimanche', 'Lundi', 'Mardi', 'Mercredi','Jeudi', 'Vendredi');
            $f = facteur($jour, $mois,$annee);
            $j = $f-intval($f/7)*7;
            return $jours_sem[$j]; 
        }
        
Cette fonction est appellée avec la fonction JourSemaine
        function facteur($jour,$mois,$annee){
            $b=365*$annee;
            $c=31*($mois-1);
            if (($mois==1) || ($mois==2)){
                $d= 0; $e = intval(($annee -1)/4); $h = intval(0.75*(intval(($annee-1)/100)+1));
            }else{
                $d= intval(0.4*$mois+2.3); $e = intval($annee/4); $h = intval(0.75*(intval($annee/100)+1));
            }
            $result = $jour + $b + $c - $d + $e - $h;
            return $result;
        }