Conversion d'une date (aaaa/mm/dd)

0/5 (1 avis)

Snippet vu 7 487 fois - Téléchargée 30 fois

Contenu du snippet

Il sert à convertir une date specifié en chaine de caractère (en francais)

Source / Exemple :


<?  //Pour avoir la chaine en français

function retourdate($date){
                //declaration du tableau de mois
$lesMois = Array (1=>"Janvier", "Fevrier", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Decembre");

	//division de la date par rapport au /
  $retour = split ('/', $date);

	//test si le mois est valide et renvoie la date
  $mois = $lesMois[(int)$retour[2]];
  if ($mois == NULL){
	return ("La date n'est pas valide");   
  }else{
	  return("La date est le ".$retour[1]." ".$mois." ".$retour[0]);
  }
}

$test = "2002/13/12"; // saisie de la date
$result = retourdate ($test); //appel de la fonction de conversion
print($result);   
?>

<? // Même fonction qui renvoie la date en anglais par un timestamp  
function retourdate($date){

	//division de la date par rapport au /
  $retour = split ('/', $date);

	//transformation en stamp
  $val = mktime(0,0,0, $retour[2], $retour[1], $retour[0]);
  $result=date("d F Y", $val);
  return $result;
}

$test = "2002/08/12"; //date type année/jour/mois
$result = retourdate ($test); 
print($result);
?>

Conclusion :


Merci au code de Romuald comme ça j'ai pas eu a chercher trop longtemps pour le timestamp ;))
De nouveau merci Romuald ;))

A voir également

Ajouter un commentaire Commentaire
Messages postés
172
Date d'inscription
lundi 30 avril 2001
Statut
Membre
Dernière intervention
6 avril 2003

Un conseil pour optimiser ton code et remplacer la fonction mois, utilise plutôt un tableau pour stocker les noms et appelle ensuite ce tableau par l'index du mois.
Exemple :

$lesMois = Array(1=>"Janvier", "Fevrier", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Decembre");

Puis ensuite :
$mois = $lesMois[(int)$retour[2]];
Avec un N° invalide je suppose qu'un null est retrouvé.

Le (int) sert à forcer la convertion en entier dans le cas d'un "02" par exemple.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.