Obtenir une valeur numérique d'une variable non numérique...

Résolu
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010 - 3 juil. 2010 à 11:52
genetApt151 Messages postés 30 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 2 avril 2011 - 3 juil. 2010 à 23:05
Bonjour, j'ai eu beau chercher... je trouve pas mon bonheur...
voilà j'aimerais faire une fonction permetant de transformer une date de :
01-01-2010 en 01-Janvier-2010

$lemois1=array( 1=> "Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Décembre");
// met les mois en lettre
function TransformDate($datea){
list($LeJour,$LeMois,$LAnnee)=explode ('-',$datea); // le "0"= la date, et le "1" le jour

$lolo="";
$lolo=$LeJour."-".$lemois1["$LeMois"]."-".$LAnnee."";
return $lolo;
}


mais bien sûre que le problème vient de : $lemois1["$LeMois"]=> $LeMois n'étant pas numérique, et je ne connais pas la fonction permettant de changer ma variable : en vb on ferait val(...) il doit y avoir quelque chose de similair en php, merci pour votre aide

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...

5 réponses

cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
3 juil. 2010 à 12:34
Bonjour,

Tu fait un tableau associatif :
<?php
  function transformDate($laDate)
  {
    $lesMois array('01'> 'Janvier',
                     '02' => 'Février',
                     '03' => 'Mars',
                     '04' => 'Avril',
                     '05' => 'Mai',
                     '06' => 'Juin',
                     '07' => 'Juillet',
                     '08' => 'Aout',
                     '09' => 'Septembre',
                     '10' => 'Octobre',
                     '11' => 'novembre',
                     '12' => 'Décembre');

    list($jour, $mois, $annee) = explode('-', $laDate);
    return $jour . '-' . $lesMois[$mois] . '-' . $annee;
  }
  //----------------------------------------------------------------------------
  //----------------------------------------------------------------------------
  //----------------------------------------------------------------------------
  $laDate = '10-06-2010';

  echo transformDate($laDate);
?>


Cordialement.

JC
3
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010
3 juil. 2010 à 12:36
Mais bien sûre....
Je te remercie infiniment.

:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
0
cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
3 juil. 2010 à 12:37
Un détail : en Français, les noms de mois s'écrivent sans majuscule (valable aussi pour les jours).


Cordialement.

JC
0
cs_Sator Messages postés 351 Date d'inscription samedi 7 février 2004 Statut Membre Dernière intervention 6 octobre 2010
3 juil. 2010 à 12:38
Merci pour l'info...


:)Sator :)

ps: si il ni avait pas de faute d'orthographe dans ce texte, il y a fort à parier que ce texte ne serait pas de moi...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
genetApt151 Messages postés 30 Date d'inscription lundi 7 mai 2007 Statut Membre Dernière intervention 2 avril 2011 1
3 juil. 2010 à 23:05
Pour info, pour convertir une chaine en nombre, il existe intval(...) / floatval (...) : http://php.net/manual/fr/function.intval.php
0
Rejoignez-nous