Un script d'affichage de la date en PHP qui ne fonctionne pas

THX1138

Membre confirmé
16 Juin 2005
64
1
63
www.philippecuny.com
Bonjour,

J'ai utilisé ce script d'affichage de la date avec le nom du mois complet en Français.
Sinon visiblement il est facile de l'avoir complet en Anglais mais ça ne m'intéresse pas :

<?
/* Programme index_4.php */
function afficher_mois($date){
switch($date){

case "1":
print(" janvier ");
break;

case "2":
print(" fevrier ");
break;

case "3":
print(" mars ");
break;

case "4":
print(" avril ");
break;

case "5":
print(" mai ");
break;

case "6":
print(" juin ");
break;

case "7":
print(" juillet ");
break;

case "8":
print(" aout ");
break;

case "9":
print(" septembre ");
break;

case "10":
print(" octobre ");
break;

case "11":
print(" novembre ");
break;

case "12":
print(" decembre ");
break;
}
}

$jour=date("j");
$nb_mois=date("m");
$annee=date("Y");

?>
 
puffuiiiii

moi je ferais :

$date = date("d-F-Y"); //recuperation de la date du jour par exemple

//fonction de réécriture de la date
function tradu($date) {
$date= explode("-",$date);
$jour = $date[0];
$mois = $date[1];
$annee = $date[2];

if ($mois == "September") return $jour." - Septembre - ".$annee;
if ($mois == "June") return $jour." - Juin - ".$annee;

//etc ect pour les autres mois
}
puis dans ma page

$test = tradu($date);
echo $test;

//le echo affichera pour aujourd'hui 2 sept

02 - Septembre - 2006
 
Merci Captain_X pour cette version accélérée.

Sinon j'avais mal rédigé l'affichage du résultat dans le body, en utilisant print malgré ma fonction afficher_mois.

J'ai donc corrigé par :

<?
print("$jour");
afficher_mois($nb_mois);
print(" $annee");
?>
 
  • J’aime
Réactions: Human-Fly
aller, encore plus simple :

Bloc de code:
$MONTHS = array("Janvier", "Fevrier", "Mars"); // tu les met tous
echo $MONTHS[settype(date("m"), "interger")];
 
  • J’aime
Réactions: molgow
Oups oui setttype retourne un bool qui te dira si l'operation a reussi,
le premiers parametre passe en reference... desole !
http://au.php.net/manual/en/function.settype.php

Bloc de code:
$MONTHS = array("Janvier", "Fevrier", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre"); // tu les met tous
$m = date('m');
settype($m, "int");
echo $MONTHS[$m-1];
voila qui fonctionne.